De query is onderdeel van een nieuwsbriefsysteem, dit stukje code is voor het activeren van een adres.
Alleen het vreemde is dat er telkens 0 rows teruggegeven wordt, terwijl ik in phpmyadmin zie dat de query uitgevoerd wordt. Als ik de query echo en uitvoer in phpmyadmin krijg ik 1 row terug.
Ik ben de query stukje voor stukje aan het aanpassen geweest.
Uiteindelijk werkte hier de onderste query wel:
En hier gaat het blijkbaar fout:
De datatypen van de kolommen emailadres en activatiecode zijn beide VARCHAR(30).
emailadres NOT NULL en UNIQUE en activatiecode NULL.
PHP:
1
2
3
4
5
6
7
8
9
10
11
| $query = "UPDATE nb_klanten SET activatiecode=NULL,datum_geactiveerd=NOW(),IP_geactiveerd='" . $_SERVER['REMOTE_ADDR'] . "' WHERE emailadres='" . $emailadres . "' AND activatiecode='" . $activatiecode . "'"; mysql_query($query, $db); echo mysql_affected_rows(); //test if(mysql_affected_rows() > 0) { $report = "goed"; } else { $report = "fout"; } |
Alleen het vreemde is dat er telkens 0 rows teruggegeven wordt, terwijl ik in phpmyadmin zie dat de query uitgevoerd wordt. Als ik de query echo en uitvoer in phpmyadmin krijg ik 1 row terug.
Ik ben de query stukje voor stukje aan het aanpassen geweest.
Uiteindelijk werkte hier de onderste query wel:
PHP:
1
2
| // $query = "UPDATE nb_klanten SET activatiecode=NULL,datum_geactiveerd=NOW(),IP_geactiveerd='" . $_SERVER['REMOTE_ADDR'] . "' WHERE emailadres='" . $emailadres . "' AND activatiecode='" . $activatiecode . "'"; $query = "UPDATE nb_klanten SET activatiecode=NULL,datum_geactiveerd=NOW(),IP_geactiveerd='" . $_SERVER['REMOTE_ADDR'] . "' WHERE emailadres='" . $emailadres . "'"; |
En hier gaat het blijkbaar fout:
PHP:
1
| AND activatiecode='" . $activatiecode . "' |
De datatypen van de kolommen emailadres en activatiecode zijn beide VARCHAR(30).
emailadres NOT NULL en UNIQUE en activatiecode NULL.
[ Voor 25% gewijzigd door marcovtwout op 03-01-2005 11:04 ]