abonnement Unibet Coolblue
pi_141447376
quote:
11s.gif Op zaterdag 21 juni 2014 23:47 schreef bondage het volgende:

[..]

Die zou je in de selectUser functie naar een div kunnen schrijven, die is daar immers bekend.
Zou je me hier iets meer over kunnen vertellen? :@.

Ik heb zelf wat geprobeerd (o.a. http://stackoverflow.com/(...)ite-to-a-div-element), maar dat gaf niet het gewenste resultaat.
  FOK!mycroftheld maandag 23 juni 2014 @ 13:45:43 #27
128465 verified  bondage
niet meer aanwezig op FOK!
pi_141448002
quote:
0s.gif Op maandag 23 juni 2014 13:29 schreef zarGon het volgende:

[..]

Zou je me hier iets meer over kunnen vertellen? :@.

Ik heb zelf wat geprobeerd (o.a. http://stackoverflow.com/(...)ite-to-a-div-element), maar dat gaf niet het gewenste resultaat.
Gewoon via jQuery: $("#id_van_je_divje").html(var_met_userid);
pi_141448063
quote:
14s.gif Op maandag 23 juni 2014 13:45 schreef bondage het volgende:

[..]

Gewoon via jQuery: $("#id_van_je_divje").html(var_met_userid);
Waar moet dit geplaatst worden?

Op de user-pagina of op de index (samen bij de rest van de js)?
  FOK!mycroftheld maandag 23 juni 2014 @ 16:06:38 #29
128465 verified  bondage
niet meer aanwezig op FOK!
pi_141453184
quote:
1s.gif Op maandag 23 juni 2014 13:46 schreef zarGon het volgende:

[..]

Waar moet dit geplaatst worden?

Op de user-pagina of op de index (samen bij de rest van de js)?
In de functie selectUser, daar is het ID namelijk bekend.
pi_141455043
quote:
11s.gif Op maandag 23 juni 2014 16:06 schreef bondage het volgende:

[..]

In de functie selectUser, daar is het ID namelijk bekend.
http://fok.zevkiselim.nl/crew2.0/?type=user#id=151187.

*O*.

Nu de rest er nog omheen bouwen.
pi_141483314
quote:
11s.gif Op maandag 23 juni 2014 16:06 schreef bondage het volgende:

[..]

In de functie selectUser, daar is het ID namelijk bekend.
1
2
3
4
5
6
function selectUser(user_id) {
    $("#userselect").hide();
    $("#userinfo").show();
    $("#userid").show(); $("#userid").html(user_id);
    drawItems(user_id);
}
Bedoeling van dit stukje:
- regel 2 verbergt de lijst van users
- regel 3 toont de userinfo (gebruikersnaam/userid/registratiedatum etc.)
- regel 4 toont de userid specifiek voor de SQL-query.
- regel 5 tekent de grafieken.

Gaat nu vooral om regel 3 en 4.
­
­
­
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<div class="page-header" id="userinfo" style="display:none;">
        <?php 
        
try {
            require(
'config.php'); 
            
            
$UserID '<span id="userid"></span>';
            echo 
$UserID;
            
$con= new PDO"mysql:host=" $settings["dbserver"] . ";dbname=" $settings["dbname"], $settings["dbuser"], $settings["dbpass"]);  
            
$sql=    "SELECT
                          PK_Gebruiker
                        , Gebruikersnaam
                        , UserID
                    FROM Gebruiker
                    WHERE UserID = " 
$UserID " "
                    
            
$stmt=$con->prepare($sql);
            
$stmt->execute(); 
    
            while(
$row $stmt->fetch(PDO::FETCH_ASSOC)) {  
                echo 
'<h1>LOL</h1>';
                
//echo $row['Gebruikersnaam'];
            
}
        } 
        
        
// Errorafhandeling
        
catch(PDOException $e) {
            echo 
'<pre>';
            echo 
'Regel: '.$e->getLine(). '<br />';
            echo 
'Bestand: '.$e->getFile(). '<br />'
            echo 
'Foutmelding: '.$e->getMessage();
            echo 
'</pre>'
        }                
        
?>
    </div>
Ik weet dat de code veel beter kan.

- $UserID is de UserID van geselecteerde user (regel 4 van de js-code).
- $UserID werkt als ik een echo doe, ik zie dan de geselecteerde UserID.
- $sql zou de Gebruikersnaam moeten ophalen op basis van $UserID.
- Voor elke record (in dit geval maar eentje) zou er 'LOL' zichtbaar moeten zijn.
- De query werkt wel als ik handmatig een UserID invul en geen $UserID gebruik.

Dit werkt helaas niet. Jij/iemand een idee waarom niet?

Ik wil in de while() de userinfo tonen.

Hoe kan dit makkelijker/beter?

[ Bericht 0% gewijzigd door #ANONIEM op 24-06-2014 11:27:04 ]
  FOK!mycroftheld dinsdag 24 juni 2014 @ 11:28:55 #32
128465 verified  bondage
niet meer aanwezig op FOK!
pi_141483411
quote:
0s.gif Op dinsdag 24 juni 2014 11:25 schreef zarGon het volgende:
$UserID = '<span id="userid"></span>';
Gequote stukje gaat nooit werken natuurlijk, je geeft nu een string zonder betekenis mee aan je query. Is het de bedoeling dat de naam van de user wordt opgehaald adhv het ID die geselecteerd is?
pi_141483570
quote:
11s.gif Op dinsdag 24 juni 2014 11:28 schreef bondage het volgende:

[..]

Gequote stukje gaat nooit werken natuurlijk, je geeft nu een string zonder betekenis mee aan je query. Is het de bedoeling dat de naam van de user wordt opgehaald adhv het ID die geselecteerd is?
Bedoeling is dat ik data (van de user) uit de database trek. Ik moet daarvoor echter weten welke user er geselecteerd is. Dat wordt nu met $("#userid").html(user_id); gedaan.

Als ik eenmaal een UserID heb, kan ik de data uit de database tonen.

Omdat de UserID (#id=xxx) nu met JavaScript werkt, kan ik geen PHP gebruiken. Of nou ja, dat is me niet gelukt.
pi_141483609
quote:
11s.gif Op dinsdag 24 juni 2014 11:28 schreef bondage het volgende:

[..]

Gequote stukje gaat nooit werken natuurlijk, je geeft nu een string zonder betekenis mee aan je query. Is het de bedoeling dat de naam van de user wordt opgehaald adhv het ID die geselecteerd is?
Dat gequote stukje werkt overigens wel in een echo. Ik dacht dat het daarom ook zou werken in de query.
  FOK!mycroftheld dinsdag 24 juni 2014 @ 11:40:58 #35
128465 verified  bondage
niet meer aanwezig op FOK!
pi_141483760
quote:
0s.gif Op dinsdag 24 juni 2014 11:33 schreef zarGon het volgende:

[..]

Bedoeling is dat ik data (van de user) uit de database trek. Ik moet daarvoor echter weten welke user er geselecteerd is. Dat wordt nu met $("#userid").html(user_id); gedaan.

Als ik eenmaal een UserID heb, kan ik de data uit de database tonen.

Omdat de UserID (#id=xxx) nu met JavaScript werkt, kan ik geen PHP gebruiken. Of nou ja, dat is me niet gelukt.
Elementen die dynamisch worden gevuld kun je niet doorgeven. Je zal hiervoor een losse ajax request moeten doen of het geselecteerde user-id opslaan in de sessie en die hergebruiken in je query.
pi_141483971
quote:
14s.gif Op dinsdag 24 juni 2014 11:40 schreef bondage het volgende:

[..]

Elementen die dynamisch worden gevuld kun je niet doorgeven. Je zal hiervoor een losse ajax request moeten doen of het geselecteerde user-id opslaan in de sessie en die hergebruiken in je query.
Fuck. :'). Dat gaat mij in ieder geval niet lukken. :'). Geen idee hoe of wat.

Zou jou dit willen/kunnen doen? Mits je kan/wil en tijd en zo hebt.
  FOK!mycroftheld dinsdag 24 juni 2014 @ 11:56:48 #37
128465 verified  bondage
niet meer aanwezig op FOK!
pi_141484179
quote:
0s.gif Op dinsdag 24 juni 2014 11:49 schreef zarGon het volgende:

[..]

Fuck. :'). Dat gaat mij in ieder geval niet lukken. :'). Geen idee hoe of wat.

Zou jou dit willen/kunnen doen? Mits je kan/wil en tijd en zo hebt.
Wil je in de toekomst nog meer waarden dynamisch ophalen of is de naam van de user het enige? Het probleem is namelijk dat je op den duur met gigantisch veel losse requests komt te zitten, lijkt me niet de bedoeling en maakt de boel onoverzichtelijk. Wat je zou kunnen doen is een JS functie schrijven die alle data in één request ophaalt, dus zowel de gegevens voor de grafieken als de extra info betreft de geselecteerde gebruiker. Je kunt deze gegevens allemaal teruggeven als JSON data, dus de userdata en grafiekdata in een object en dan opsplitsen in de JS functie die de aanroep doet.

Ik heb er op dit moment helaas geen tijd voor.
pi_141484228
quote:
11s.gif Op dinsdag 24 juni 2014 11:56 schreef bondage het volgende:

[..]

Wil je in de toekomst nog meer waarden dynamisch ophalen of is de naam van de user het enige? Het probleem is namelijk dat je op den duur met gigantisch veel losse requests komt te zitten, lijkt me niet de bedoeling en maakt de boel onoverzichtelijk. Wat je zou kunnen doen is een JS functie schrijven die alle data in één request ophaalt, dus zowel de gegevens voor de grafieken als de extra info betreft de geselecteerde gebruiker. Je kunt deze gegevens allemaal teruggeven als JSON data, dus de userdata en grafiekdata in een object en dan opsplitsen in de JS functie die de aanroep doet.
Voor de user-pagina is bijna alles rond, alleen de genoemde gegevens hierboven missen. En dat kan allemaal geregeld worden met alleen de UserID.

quote:
Ik heb er op dit moment helaas geen tijd voor.
Helaas. ;(. Bedankt voor je uitleg nog in ieder geval, al kan ik er weinig mee.

*;

[ Bericht 0% gewijzigd door #ANONIEM op 24-06-2014 11:59:07 ]
  FOK!mycroftheld dinsdag 24 juni 2014 @ 12:00:57 #39
128465 verified  bondage
niet meer aanwezig op FOK!
pi_141484293
quote:
0s.gif Op dinsdag 24 juni 2014 11:58 schreef zarGon het volgende:

[..]

Voor de user-pagina is bijna alles rond, alleen de genoemde gegevens hierboven missen. En dat kan allemaal geregeld worden met alleen de UserID.

[..]

Helaas. ;(. Bedankt voor je uitleg nog in ieder geval, al kan ik er weinig mee.

*;
Ik ga vanavond ff voor je kijken, ben nu aan het werk. Het is namelijk niet zo heel erg ingewikkeld.
pi_141484303
quote:
14s.gif Op dinsdag 24 juni 2014 12:00 schreef bondage het volgende:

[..]

Ik ga vanavond ff voor je kijken, ben nu aan het werk. Het is namelijk niet zo heel erg ingewikkeld.
O+. Heel erg bedankt!
pi_141575515
Ben bezig met de 'admin'-pagina's, warmee je gemakkelijk data kunt toevoegen aan de database.

http://fok.zevkiselim.nl/crew2.0/admin/view.php.

Ik zou het volgende willen weten: hoe kan ik in plaats van een textbox een dropdownlijstje weergeven? In die dropdown staan dan de mogelijke waarden die al voorkomen in de database.

Ik heb dat nodig voor het gedeelte 'rol'. Ik wil bij het toevoegen van een 'rol' ook meteen een subsite kunnen kiezen. Dat je bijvoorbeeld 'DIG' toevoegt en daarbij uit een dropdown 'Forum' als subsite kan kiezen.

Met textbox: http://fok.zevkiselim.nl/crew2.0/admin/edit.php?rol.
(Werkt nu sowieso niet, de SQL-query klopt niet.)

--> Ik wil dus dat 'Subsitenaam' geen textbox is, maar een dropdownlijst.

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
<?php

elseif (isset($_GET['rol']))
{
    
// creates the new/edit record form
    // since this form is used multiple times in this file, I have made it a function that is easily reusable
    
function renderForm($Subsitenaam ''$Rolafkorting ''$Rolomschrijving ''$Foutmelding ''$PK_Rol '')
{
?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
        <head>    
            <title>    <?php if ($PK_Rol != '') { echo "Edit Record"; } else { echo "New Record"; } ?>    </title>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        </head>
        <body>
            <h1><?php if ($PK_Rol != '') { echo "Edit Record"; } else { echo "New Record"; } ?></h1>
            <?php
            
if ($Foutmelding != '') {
            echo 
"<div style='padding:4px; border:1px solid red; color:red'>" $Foutmelding "</div>";
            } 
            
?>
            <form action="" method="post">
                <div>
                    <?php
                    
if ($PK_Rol != '') { ?>
                    <input type="hidden" name="PK_Rol" value="<?php echo $PK_Rol?>" />
                    <p>PK_Rol: <?php echo $PK_Rol?></p>
                    <?php }    ?>
                
                    <strong>Subsitenaam: *</strong> <input type="text" name="Subsitenaam" value="<?php echo $Subsitenaam?>"/><br/>
                    <strong>Rolafkorting: *</strong> <input type="text" name="Rolafkorting" value="<?php echo $Rolafkorting?>"/><br/>
                    <strong>Rolomschrijving: *</strong> <input type="text" name="Rolomschrijving" value="<?php echo $Rolomschrijving?>"/><br/>
                    <p>* required</p>
                    <input type="submit" name="submit" value="Submit" />
                </div>
            </form>
        </body>
    </html>
    
<?php }
    
/* EDIT RECORD */
    
    // if the 'PK_Rol' variable is set in the URL, we know that we need to edit a record
    
if (isset($_GET['PK_Rol']))
    {
        
// if the form's submit button is clicked, we need to process the form
        
if (isset($_POST['submit']))
        {
            
// make sure the 'PK_Rol' in the URL is valid
            
if (is_numeric($_POST['PK_Rol']))
            {
                
// get variables from the URL/form
                
$PK_Rol $_POST['PK_Rol'];
                
$Subsitenaam htmlentities($_POST['Subsitenaam'], ENT_QUOTES);
                
$Rolafkorting htmlentities($_POST['Rolafkorting'], ENT_QUOTES);
                
$Rolomschrijving htmlentities($_POST['Rolomschrijving'], ENT_QUOTES);
                    
                
// check that firstname and lastname are both not empty
                
if ($Subsitenaam == '' || $Rolafkorting == '' || $Rolomschrijving == '')
                {
                    
// if they are empty, show an error message and display the form
                    
$Foutmelding 'ERROR: Please fill in all required fields!';
                    
renderForm($Subsitenaam$Rolafkorting$Rolomschrijving$Foutmelding$PK_Rol);
                }
                else
                {
                    
// if everything is fine, update the record in the database          //!!!!!!!!!!!!!!!
                    
if ($stmt $mysqli->prepare("UPDATE Rol SET Naam = ? WHERE PK_Rol=?"))
                    {
                        
$stmt->bind_param("sssi"$Subsitenaam$Rolafkorting$Rolomschrijving$PK_Rol);
                        
$stmt->execute();
                        
$stmt->close();
                    }
                    
// show an error message if the query has an error
                    
else
                    {
                        echo 
"ERROR: could not prepare SQL statement.";
                    }
                    
                    
// redirect the user once the form is updated
                    
header("Location: view.php?rol");
                }
            }
            
// if the 'PK_Rol' variable is not valid, show an error message
            
else
            {
                echo 
"Error!";
            }
        }
        
// if the form hasn't been submitted yet, get the info from the database and show the form
        
else
        {
            
// make sure the 'PK_Rol' value is valid
            
if (is_numeric($_GET['PK_Rol']) && $_GET['PK_Rol'] > 0)
            {
                
// get 'PK_Rol' from URL
                
$PK_Rol $_GET['PK_Rol'];
                    
                
// get the record from the database
                
if($stmt $mysqli->prepare("SELECT * FROM Subsite WHERE PK_Rol=?")) //!!!!!!!!!
                
{
                    
$stmt->bind_param("i"$PK_Rol);
                    
$stmt->execute();
                    
                    
$stmt->bind_result($PK_Rol$Subsitenaam$Rolafkorting$Rolomschrijving);
                    
$stmt->fetch();
                        
                    
// show the form
                    
renderForm($Subsitenaam$Rolafkorting$RolomschrijvingNULL$PK_Rol);
                    
                    
$stmt->close();
                }
                
// show an error if the query has an error
                
else
                {
                    echo 
"Error: could not prepare SQL statement";
                }
            }
            
// if the 'PK_Rol' value is not valid, redirect the user back to the view.php page
            
else
            {
                
header("Location: view.php?rol");
            }
        }
    }
    
    
/* NEW RECORD */
    // if the 'PK_Rol' variable is not set in the URL, we must be creating a new record
    
else
    {
        
// if the form's submit button is clicked, we need to process the form
        
if (isset($_POST['submit']))
        {
            
// get the form data
            
$Subsitenaam htmlentities($_POST['Subsitenaam'], ENT_QUOTES);
            
$Rolafkorting htmlentities($_POST['Rolafkorting'], ENT_QUOTES);
            
$Rolomschrijving htmlentities($_POST['Rolomschrijving'], ENT_QUOTES);
            
            
// check that firstname and lastname are both not empty
            
if ($Subsitenaam == '' || $Rolafkorting == '' || $Rolomschrijving == '')
            {
                
// if they are empty, show an error message and display the form
                
$Foutmelding 'ERROR: Please fill in all required fields!';
                
renderForm($Subsitenaam$Rolafkorting$Rolomschrijving$Foutmelding);
            }
            else
            {
                
// insert the new record into the database
                
if ($stmt $mysqli->prepare("INSERT Rol (Naam) VALUES (?)")) //! !!!!!!!!!!!!
                
{
                    
$stmt->bind_param("sss"$Subsitenaam$Rolafkorting$Rolomschrijving);
                    
$stmt->execute();
                    
$stmt->close();
                }
                
// show an error if the query has an error
                
else
                {
                    echo 
"ERROR: Could not prepare SQL statement.";
                }
                    
                
// redirec the user
                
header("Location: view.php?rol");
            }
        }
        
// if the form hasn't been submitted yet, show the form
        
else
        {
            
renderForm();
        }
    }
        
    
// close the mysqli connection
    
$mysqli->close();
}
?>


[ Bericht 0% gewijzigd door #ANONIEM op 26-06-2014 15:06:17 ]
  Moderator / Redactie Sport donderdag 26 juni 2014 @ 15:30:15 #42
359864 crew  Nattekat
De roze zeekat
pi_141576427
quote:
0s.gif Op donderdag 26 juni 2014 15:04 schreef zarGon het volgende:
Ben bezig met de 'admin'-pagina's, warmee je gemakkelijk data kunt toevoegen aan de database.

http://fok.zevkiselim.nl/crew2.0/admin/view.php.

Ik zou het volgende willen weten: hoe kan ik in plaats van een textbox een dropdownlijstje weergeven? In die dropdown staan dan de mogelijke waarden die al voorkomen in de database.

Ik heb dat nodig voor het gedeelte 'rol'. Ik wil bij het toevoegen van een 'rol' ook meteen een subsite kunnen kiezen. Dat je bijvoorbeeld 'DIG' toevoegt en daarbij uit een dropdown 'Forum' als subsite kan kiezen.

Met textbox: http://fok.zevkiselim.nl/crew2.0/admin/edit.php?rol.
(Werkt nu sowieso niet, de SQL-query klopt niet.)

--> Ik wil dus dat 'Subsitenaam' geen textbox is, maar een dropdownlijst.

Code:
[ code verwijderd ]

1
2
3
4
5
6
<?php
<select>
  <
option value="DIG">DIG</option>
  <
option value="GC">GC</option>
</
select>
?>

Wil je zoiets hebben?

Met een array die uit de SQL query rolt kan je een for each opstellen voor elke subsite waarbij je bij elke subsite een nieuwe option toevoegt.
100.000 katjes
Maakte de 100.000e post in BIT
Er eens op uit?
pi_141576581
quote:
0s.gif Op donderdag 26 juni 2014 15:30 schreef Nattekat het volgende:

[..]
[ code verwijderd ]

Wil je zoiets hebben?
Jep! In plaats van handmatig 'DIG' of 'GC' invullen, wil ik het kunnen kiezen. Makkelijker, en niet foutgevoelig.
quote:
Met een array die uit de SQL query rolt kan je een for each opstellen voor elke subsite waarbij je bij elke subsite een nieuwe option toevoegt.
Dat wordt een while() zoals bij de grafieken?

Hm...
  Moderator / Redactie Sport donderdag 26 juni 2014 @ 15:37:56 #44
359864 crew  Nattekat
De roze zeekat
pi_141576724
quote:
0s.gif Op donderdag 26 juni 2014 15:34 schreef zarGon het volgende:
Dat wordt een while() zoals bij de grafieken?

Hm...
Ik zou persoonlijk eerst bestaande code kopieren (die code die alle gegevens voor een piechart in een array gooit) en vervolgens die array gebruiken om het te vullen. Scheelt werk en is iets overzichtelijker.
100.000 katjes
Maakte de 100.000e post in BIT
Er eens op uit?
pi_141576794
quote:
0s.gif Op donderdag 26 juni 2014 15:37 schreef Nattekat het volgende:

[..]

Ik zou persoonlijk eerst bestaande code kopieren (die code die alle gegevens voor een piechart in een array gooit) en vervolgens die array gebruiken om het te vullen. Scheelt werk en is iets overzichtelijker.
De grafieken tonen geen usergegevens, maar subsite/rol/activiteit.

Ik zal er vanavond eens naar kijken.
  Moderator / Redactie Sport donderdag 26 juni 2014 @ 15:41:20 #46
359864 crew  Nattekat
De roze zeekat
pi_141576859
quote:
0s.gif Op donderdag 26 juni 2014 15:39 schreef zarGon het volgende:

[..]

De grafieken tonen geen usergegevens, maar subsite/rol/activiteit.

Ik zal er vanavond eens naar kijken.
Dat snap ik, maar die code kan je als uitgangspunt nemen ;)
100.000 katjes
Maakte de 100.000e post in BIT
Er eens op uit?
  FOK!mycroftheld donderdag 26 juni 2014 @ 21:32:32 #47
128465 verified  bondage
niet meer aanwezig op FOK!
pi_141592620
quote:
0s.gif Op dinsdag 24 juni 2014 12:01 schreef zarGon het volgende:

[..]

O+. Heel erg bedankt!
Ben er helaas nog niet aan toegekomen, te druk de laatste paar dagen. Zal morgen of in het weekend even iets proberen te fixen.
pi_141600422
quote:
14s.gif Op donderdag 26 juni 2014 21:32 schreef bondage het volgende:

[..]

Ben er helaas nog niet aan toegekomen, te druk de laatste paar dagen. Zal morgen of in het weekend even iets proberen te fixen.
:).

Ik richt me op de andere delen. Komt wel goed.
pi_141616986
Rol:
- PK_Rol
- Afkorting
- Omschrijving
- FK_Subsite

Subsite:
- PK_Subsite
- Naam

1
2
3
4
SELECT *
FROM Rol R
LEFT JOIN Subsite S
    ON R.FK_Subsite = S.PK_Subsite

Huidige waarden:
- Rol.PK_Rol = 1
- Rol.Afkorting = 'BAG'
- Rol.Omschrijving = 'BAGGER'
- Rol.FK_Subsite = 1

- Subsite.PK_Subsite = 1
- Subsite.Naam = Forum
- Subsite.PK_Subsite = 2
- Subsite.Naam = Frontpage

Ergo: het forum heeft een BAG-forum.

----

Ik wil dat updaten...
Rol.Afkorting: 'BAG' -> 'GAB'
Rol.Omschrijving: 'BAGGER' -> 'GABBER'
Subsite.Naam = 'Forum' -> 'Frontpage'.

Ik wil alleen de tabel Rol updaten, dus met Subsite.Naam zou de juiste Subsite.PK_Subsite opgezocht moeten worden. Rol.FK_Subsite zou deze nieuwe waarde moeten krijgen.

Dit zouden dus de nieuwe waarden moeten zijn:
- Rol.PK_Rol = 1
- Rol.Afkorting = 'GAB'
- Rol.Omschrijving = 'GABBER'
- Rol.FK_Subsite = 2

Wat is de juiste SQL-updatequery hiervan? Of nou ja, kan dat met 1 query?

[ Bericht 0% gewijzigd door #ANONIEM op 27-06-2014 14:50:03 ]
  Moderator / Redactie Sport vrijdag 27 juni 2014 @ 20:30:36 #50
359864 crew  Nattekat
De roze zeekat
pi_141627181
Ik heb nog even zitten rondkijken op de kwetsbaarheid van jouw server, het lijkt vanaf mijn oogpunt dat de sql-tabel read-only is, dat zit dus wel goed. Echter is jouw server kwetsbaar voor SQL-injections. Je kan het zelf uitproberen door naar http://fok.zevkiselim.nl/crew2.0/?type=user#id=1 OR 1=1 te gaan, de grafieken zullen elke rij uit de tabel tonen.

Ik heb nog geprobeerd om gegevens in die tabel te krijgen maar dat is dus niet gelukt. Toch is het een goed idee om de tabel 'gebruikers' te controleren op mijn fratsen :P

Je kan dit oplossen door in user-piechart en user-table in de sql code ". $id ." te veranderen naar "?" (zonder aanhalingstekens) en dan deze uit te voeren met $stmt->execute($id)

Hele code voor de volledigheid:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
    $sql 
=    "SELECT 
                  G.Gebruikersnaam
                , R.Afkorting Rolafkorting
                , SUM(DATEDIFF(IFNULL(A.Einddatum,CURDATE()),A.Startdatum)+1) Duur
            FROM Activiteit A
            LEFT JOIN Gebruiker G
                ON A.FK_Gebruiker = G.PK_Gebruiker
            LEFT JOIN Rol R
                ON A.FK_ROL = R.PK_ROL
            LEFT JOIN Subsite S
                ON R.FK_Subsite = S.PK_Subsite
            WHERE G.UserID = ?
            GROUP BY G.Gebruikersnaam, R.Afkorting
            ORDER BY A.Startdatum ASC, IFNULL(A.Einddatum,CURDATE()) ASC"
;

    
$stmt=$con->prepare($sql); 
    
$stmt->execute($id); 
?>
100.000 katjes
Maakte de 100.000e post in BIT
Er eens op uit?
abonnement Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')