SQL Update, update niet
Ik ben al twee dagen bezig om een fout te vinden in de volgende query. Ik kan hem echt niet vinden. ik krijg geen foutmelding als ik hem uitvoer, tabellen kloppen 100%.
Misschien als een van jullie hier een oog op werpt dat diegene het probleem in één keer ziet.
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
$gebruikersnaam = $_POST['gebruikersnaam'];
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$telefoon = $_POST['telefoon'];
$email = $_POST['email'];
$sql = "UPDATE `werknemers` SET `werknemers_voornaam` = '".$voornaam."', `werknemers_tussenvoegsel` = '".$tussenvoegsel."', `werknemers_telefoonnummer` = '".$telefoon."', `werknemers_email` = '".$email."' WHERE `werknemers_gebruikersnaam` = '".$gebruikersnaam."'";
$query = mysql_query($sql);
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$telefoon = $_POST['telefoon'];
$email = $_POST['email'];
$sql = "UPDATE `werknemers` SET `werknemers_voornaam` = '".$voornaam."', `werknemers_tussenvoegsel` = '".$tussenvoegsel."', `werknemers_telefoonnummer` = '".$telefoon."', `werknemers_email` = '".$email."' WHERE `werknemers_gebruikersnaam` = '".$gebruikersnaam."'";
$query = mysql_query($sql);
$res = mysql_query($sql) or die(mysql_error());
^^ dit helpt zo goed he :)
of anders:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?
if($res = mysql_query($sql))
{
// het is goed gegaan.
}
else {
mysql_error();
}
?>
if($res = mysql_query($sql))
{
// het is goed gegaan.
}
else {
mysql_error();
}
?>
Alle variabelen kloppen wanneer ik deze echo, alle gegevens kloppen.
Dit is echt heel bizar.
Ik heb zojuist ook al de query helemaal opnieuw opgebouwd. maar helaas met hetzelfde resultaat.
Nu heb ik het volgende:
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
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
<?php
require("session.php");
require("config.php");
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$level = $_POST['level'];
$telefoon = $_POST['telefoon'];
$email = $_POST['email'];
$gebruikersnaam = $_POST['gebruikersnaam'];
$sql = "UPDATE `werknemers` SET `werknemers_voornaam` = '".$voornaam."', `werknemers_tussenvoegsel` = '".$tussenvoegsel."', `werknemers_achternaam`= '".$achternaam."', `werknemers_telefoonnummer` = '".$telefoon."', `werknemers_email` = '".$email."' WHERE `werknemers_gebruikersnaam` = '".$gebruikersnaam."'";
$res = mysql_query($sql) or die(mysql_error());
if($res = mysql_query($sql))
{
// het is goed gegaan.
}
else {
mysql_error();
}
?>
require("session.php");
require("config.php");
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$level = $_POST['level'];
$telefoon = $_POST['telefoon'];
$email = $_POST['email'];
$gebruikersnaam = $_POST['gebruikersnaam'];
$sql = "UPDATE `werknemers` SET `werknemers_voornaam` = '".$voornaam."', `werknemers_tussenvoegsel` = '".$tussenvoegsel."', `werknemers_achternaam`= '".$achternaam."', `werknemers_telefoonnummer` = '".$telefoon."', `werknemers_email` = '".$email."' WHERE `werknemers_gebruikersnaam` = '".$gebruikersnaam."'";
$res = mysql_query($sql) or die(mysql_error());
if($res = mysql_query($sql))
{
// het is goed gegaan.
}
else {
mysql_error();
}
?>
Gewijzigd op 01/01/1970 01:00:00 door SanderV
sloop die backticks eruit
Een UPDATE query werkt volgens mij niet met comma's...Gebruikt AND of && ipv een comma
wes schreef op 18.01.2007 11:36:
sloop die backticks eruit
backticks??
Code (php)
1
2
3
4
5
2
3
4
5
<?php
$sql = "UPDATE `werknemers` SET `werknemers_voornaam` = '".$voornaam."', `werknemers_tussenvoegsel` = '".$tussenvoegsel."', `werknemers_achternaam`= '".$achternaam."', `werknemers_telefoonnummer` = '".$telefoon."', `werknemers_email` = '".$email."' WHERE `werknemers_gebruikersnaam` = '".$gebruikersnaam."'";
echo $sql;
?>
$sql = "UPDATE `werknemers` SET `werknemers_voornaam` = '".$voornaam."', `werknemers_tussenvoegsel` = '".$tussenvoegsel."', `werknemers_achternaam`= '".$achternaam."', `werknemers_telefoonnummer` = '".$telefoon."', `werknemers_email` = '".$email."' WHERE `werknemers_gebruikersnaam` = '".$gebruikersnaam."'";
echo $sql;
?>
En voer de uitkomst eens in in phpmyadmin
Edit:
```` boven de tabtoets `````
Gewijzigd op 01/01/1970 01:00:00 door Klaasjan Boven
UPDATE werknemers SET werknemers_voornaam = 'sjaak' AND werknemers_tussenvoegsel = 'de' AND werknemers_achternaam = 'bruin' AND werknemers_telefoonnummer = 'test' AND werknemers_email = 'test' WHERE werknemers_gebruikersnaam = 'sjaak'
Deze voer ik uit in phpmyadmin. Geen foutmelding niks, alleen de enige wijziging is dat het record voornaam op 0 wordt gezet :S.
Die backticks zijn eruit.
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
$sql = "UPDATE werknemers SET werknemers_voornaam = '" . $voornaam . "', werknemers_tussenvoegsel = '" . $tussenvoegsel . "', werknemers_achternaam = '" . $achternaam . "', werknemers_telefoonnummer = '" . $telefoon . "', werknemers_email = '" . $email . "' WHERE werknemers_gebruikersnaam = '" . $gebruikersnaam . "'";
$res = mysql_query($sql) or die(mysql_error());
if(mysql_affected_rows() > 0)
{
// er is iets geupdated.
}
?>
$sql = "UPDATE werknemers SET werknemers_voornaam = '" . $voornaam . "', werknemers_tussenvoegsel = '" . $tussenvoegsel . "', werknemers_achternaam = '" . $achternaam . "', werknemers_telefoonnummer = '" . $telefoon . "', werknemers_email = '" . $email . "' WHERE werknemers_gebruikersnaam = '" . $gebruikersnaam . "'";
$res = mysql_query($sql) or die(mysql_error());
if(mysql_affected_rows() > 0)
{
// er is iets geupdated.
}
?>
Ik vindt het apart, maar ik dank jullie hartelijk! Ik kan weer verder.
sander schreef op 18.01.2007 12:59:
Ok, ik heb nu dus de query gebruikt van SanThe. Om de punten staan spaties en nu werkt hij wel :S
Ik vindt het apart, maar ik dank jullie hartelijk! Ik kan weer verder.
Ik vindt het apart, maar ik dank jullie hartelijk! Ik kan weer verder.
En ik heb die 'foute' backtics verwijderd.