<?php
$q2 = mysql_query("SELECT * FROM `members` WHERE `username` = '".$_POST['username']."'");
$q3 = mysql_fetch_assoc($q2);
?>

Deze query geeft als echo : Resource id #5. Hier zou hij normaal toch de username in de post moet checken of die al in de DB staat ?
Wat echo je?

Als je echo $q2 doet geeft hij dit idd.

Als je wilt weten of hij bestaat kun je bv met mysql_num_rows($q2) nakijken.
Er zijn ook andere methodes, maar ik heb de koffie nog niet op, dus het loopt wat stroef bovenin.
gebruik geen * dit is een wildcard selecteer wat je wilt
mysql injectie mogelijk!
SQL Injectie mogelijk.
Weg met `backticks`.

Query -> Data fetchen -> While loop -> echo op scherm.
de ene zegt wel backticks , de andere niet , was ist nu :p
Niet gebruiken. Het is helemaal niet nodig.
Backticks zijn een truck van MySQL om gereserveerde woorden te kunnen gebruiken. Dit moet je niet willen.
Om dit te voorkomen is het verstandig om nooit backticks te gebruiken (En het scheelt weer dataverkeer naar je server maar dat performence verschil zal niet snel merkbaar zijn)
Nog steeds geen oplossing gevonden voor dit probleem :(
echo dit is :
<?php
echo $q3['username'];
?>
wat is dan precies je probleem ? jij vraagt of de username in de post gechecked word in de database. Antwoord is ja, hij haalt door je * alles op, wat als username de post username heeft.

Reageren