Probleempje met updatescript
Code (php)
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
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
<?php
include("config.php");
$done = "0"; // defineerd als je script als : nog niets mee gebeurd
if($_SERVER['REQUEST_METHOD'] == "POST") {
$naam = htmlentities(trim($_POST['naam']));
$site = htmlentities(trim($_POST['site']));
$id = $_POST['id'];
if(empty($naam) || empty($site)) { echo "U heeft 1 of meer velden niet ingevult"; $error ="Velden niet ingevult"; }
if(!$error) {
include("config.php");
$query = mysql_query("
UPDATE le
SET naam= '" . $naam . "',
site= '" . $site . "'
WHERE id= '" . $id."'") or die(mysql_error());
echo "Al u gegevens zijn met success opgeslagen!";
// en hier kun je nog wat bla bla bla zetten
// of links naar iets dergelijks...
$done = "1"; // veranders 0 naar 1, waardoor invoer velden niet meer zichtbaar zijn.
mysql_close();
}
}
if($done == "0") { // via dit worden je invoer velden niet meer zichtbaar als de query met success is uitgevoerd.
//waar je ergens de variable $id vandaag krijgt hangt er van af, misschien van de link via $_GET['id']; of zo iets.
$id = htmlentities(trim($_GET['id'])); // haalt var id, uit de link...
if(isset($id)) {
include("config.php");
$sql = mysql_query("SELECT * FROM le WHERE id='$id'") OR die(mysql_error());
$rij = mysql_fetch_assoc($sql); // gegevens stoceren in $rij
echo "<form action=\"\" method=\"post\">";
echo "Bewerken Links:<br> ";
echo "Naam: <input name=\"naam\" id=\"naam\" type=\"text\" value=\"" . $rij['naam'] . "\"><br>";
echo "URL: <input name=\"site\" id=\"site\" type=\"text\" value=\"" . $rij['site'] . "\"><br>";
echo "<input type=\"hidden\" value=\"$id\" >";
echo "<input type=\"submit\" value=\"save\" name=\"save\">";
mysql_close();
}
}
?>
include("config.php");
$done = "0"; // defineerd als je script als : nog niets mee gebeurd
if($_SERVER['REQUEST_METHOD'] == "POST") {
$naam = htmlentities(trim($_POST['naam']));
$site = htmlentities(trim($_POST['site']));
$id = $_POST['id'];
if(empty($naam) || empty($site)) { echo "U heeft 1 of meer velden niet ingevult"; $error ="Velden niet ingevult"; }
if(!$error) {
include("config.php");
$query = mysql_query("
UPDATE le
SET naam= '" . $naam . "',
site= '" . $site . "'
WHERE id= '" . $id."'") or die(mysql_error());
echo "Al u gegevens zijn met success opgeslagen!";
// en hier kun je nog wat bla bla bla zetten
// of links naar iets dergelijks...
$done = "1"; // veranders 0 naar 1, waardoor invoer velden niet meer zichtbaar zijn.
mysql_close();
}
}
if($done == "0") { // via dit worden je invoer velden niet meer zichtbaar als de query met success is uitgevoerd.
//waar je ergens de variable $id vandaag krijgt hangt er van af, misschien van de link via $_GET['id']; of zo iets.
$id = htmlentities(trim($_GET['id'])); // haalt var id, uit de link...
if(isset($id)) {
include("config.php");
$sql = mysql_query("SELECT * FROM le WHERE id='$id'") OR die(mysql_error());
$rij = mysql_fetch_assoc($sql); // gegevens stoceren in $rij
echo "<form action=\"\" method=\"post\">";
echo "Bewerken Links:<br> ";
echo "Naam: <input name=\"naam\" id=\"naam\" type=\"text\" value=\"" . $rij['naam'] . "\"><br>";
echo "URL: <input name=\"site\" id=\"site\" type=\"text\" value=\"" . $rij['site'] . "\"><br>";
echo "<input type=\"hidden\" value=\"$id\" >";
echo "<input type=\"submit\" value=\"save\" name=\"save\">";
mysql_close();
}
}
?>
</form>
Maar na op save gedrukt te hebben zegt hij: Al u gegevens zijn met success opgeslagen! maar hij update niets....
Wie weet wat ik fout doe?
Ben een newbie :)
geen errors?
$query = mysql_query("
UPDATE le
SET naam= '" . $naam . "',
site= '" . $site . "'
WHERE id= '" . $id."'") or die(mysql_error());
eens:
mysql_query("UPDATE le SET naam='".$naam."', site='".$site."' WHERE id='".$id."'") or die(mysql_error());
ik zie ook dat je veel echo's gebruikt, dit is niet nodig, je kan gewoon zo doen:
echo "
hier al je html
": // en hier pas afsluiten
en je gebruikt steeds \"submit\" maar met 'submit' word het een stuk overzichtelijker
(die laatste 2 dingen zijn niet fout, maar het scheelt wel ...)
echo '
<body bgcolor="#212391">
//hier dan de html inhoud
</body>'
Zoals je ziet doe ik de echo in dit geval met enkele quote ( ' ), je kan dan in de echo de html gewoon typen zoals je bent gewend, en zoals het eigenlijk hoort, met de dubbele quote ( " ).
Inderdaad kan je de regels gewoon door laten lopen, voordat je de echo sluit.
@koen
Ik zie niet precies wat je veranderd hebt, behalve dat je die enters weg hebt gehaald in de query, maar dat is niet fout op zich. Integendeel, voor de leesbaarheid is het zelfs veel beter om het zo te doen, fouten kan je ook veel sneller vinden, zeker als de query's wat langer en ingewikkelder worden.
$query = mysql_query("
en dit had ik ook een keer , en toen gebeurde er ook niks bij mij, zonder die $query = gaat hij de query ook echt uitvoeren (denk ik) en zal het misschien wel gaan werken, maar ik ben er niet zeker van ;)
Code (php)
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
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
<?php
include("config.php");
$done = "0"; // defineerd als je script als : nog niets mee gebeurd
if($_SERVER['REQUEST_METHOD'] == "POST") {
$naam = htmlentities(trim($_POST['naam']));
$site = htmlentities(trim($_POST['site']));
$id = $_POST['id'];
if(empty($naam) || empty($site)) { echo "U heeft 1 of meer velden niet ingevult"; $error ="Velden niet ingevult"; }
if(!$error) {
include("config.php");
$query = mysql_query("UPDATE le SET naam='".$naam."', site='".$site."' WHERE id='".$id."'") or die(mysql_error());
echo "Al u gegevens zijn met success opgeslagen!";
// en hier kun je nog wat bla bla bla zetten
// of links naar iets dergelijks...
$done = "1"; // veranders 0 naar 1, waardoor invoer velden niet meer zichtbaar zijn.
mysql_close();
}
}
if($done == "0") { // via dit worden je invoer velden niet meer zichtbaar als de query met success is uitgevoerd.
//waar je ergens de variable $id vandaag krijgt hangt er van af, misschien van de link via $_GET['id']; of zo iets.
$id = htmlentities(trim($_GET['id'])); // haalt var id, uit de link...
if(isset($id)) {
include("config.php");
$sql = mysql_query("SELECT * FROM le WHERE id='$id'") OR die(mysql_error());
$rij = mysql_fetch_assoc($sql); // gegevens stoceren in $rij
echo "<form action=\"\" method=\"post\">";
echo "Bewerken Links:<br> ";
echo "Naam: <input name=\"naam\" id=\"naam\" type=\"text\" value=\"" . $rij['naam'] . "\"><br>";
echo "URL: <input name=\"site\" id=\"site\" type=\"text\" value=\"" . $rij['site'] . "\"><br>";
echo "<input type=\"hidden\" value=\"$id\" >";
echo "<input type=\"submit\" value=\"save\" name=\"save\">";
mysql_close();
}
}
?>
include("config.php");
$done = "0"; // defineerd als je script als : nog niets mee gebeurd
if($_SERVER['REQUEST_METHOD'] == "POST") {
$naam = htmlentities(trim($_POST['naam']));
$site = htmlentities(trim($_POST['site']));
$id = $_POST['id'];
if(empty($naam) || empty($site)) { echo "U heeft 1 of meer velden niet ingevult"; $error ="Velden niet ingevult"; }
if(!$error) {
include("config.php");
$query = mysql_query("UPDATE le SET naam='".$naam."', site='".$site."' WHERE id='".$id."'") or die(mysql_error());
echo "Al u gegevens zijn met success opgeslagen!";
// en hier kun je nog wat bla bla bla zetten
// of links naar iets dergelijks...
$done = "1"; // veranders 0 naar 1, waardoor invoer velden niet meer zichtbaar zijn.
mysql_close();
}
}
if($done == "0") { // via dit worden je invoer velden niet meer zichtbaar als de query met success is uitgevoerd.
//waar je ergens de variable $id vandaag krijgt hangt er van af, misschien van de link via $_GET['id']; of zo iets.
$id = htmlentities(trim($_GET['id'])); // haalt var id, uit de link...
if(isset($id)) {
include("config.php");
$sql = mysql_query("SELECT * FROM le WHERE id='$id'") OR die(mysql_error());
$rij = mysql_fetch_assoc($sql); // gegevens stoceren in $rij
echo "<form action=\"\" method=\"post\">";
echo "Bewerken Links:<br> ";
echo "Naam: <input name=\"naam\" id=\"naam\" type=\"text\" value=\"" . $rij['naam'] . "\"><br>";
echo "URL: <input name=\"site\" id=\"site\" type=\"text\" value=\"" . $rij['site'] . "\"><br>";
echo "<input type=\"hidden\" value=\"$id\" >";
echo "<input type=\"submit\" value=\"save\" name=\"save\">";
mysql_close();
}
}
?>
</form>
Maar nog steeds wel die melding maar geen verandering in de db....