Hallo,
ik ben bezig met een inlog schermpje maar als ik dingen via een form verstuur bijvorobeeld de schermnaam krijg ik de melding
Unknown column 'Dion' in 'where clause'
ik heb al gezocht op google maar ben er niet uitgekomen.
Zou iemand mij willen helpen?
Mijn inlog script
<?php
require ('config.php');
require ('style.css');
$query = mysql_query("SELECT * FROM gebruikers WHERE schermnaam = ".$_POST['schermnaam']."") or die (mysql_error());
while ($obj = mysql_fetch_object($query)) {
<?php
require ('config.php');
require ('style.css');
$query = mysql_query("SELECT * FROM gebruikers WHERE schermnaam = '".$_POST['schermnaam']."';") or die (mysql_error());
while ($obj = mysql_fetch_object($query)) {
$naam = htmlspecialchars($obj->naam);
$id = htmlspecialchars($obj->id);
echo "Yooo ".$naam."";
}
?>
je kan in die query geen php zetten dus moet je eerst de query weer 'sluiten' dan je php code en dan weer openen en dan weer query
dus dan krijg je:
SELECT *
FROM gebruikers
WHERE schermnaam = ' " .$_POST['schermnaam']. " '
;
nou kijk die ; aan het eind is eigenlijk gewoon voor de netheid
daarmee zeg je in SQL dat de query is afgelopen.. volgens mij
kan het in MySql ook zonder hoor maar voor de netheid zet ik
hem er eigenlijk ALTIJD bij..
in jou query stond dit:
SELECT * FROM gebruikers WHERE schermnaam = ".$_POST['schermnaam']."
als je de query zonder php bekijkt zou er staan:
SELECT * FROM gebruikers WHERE schermnaam =
en zoals je dus ziet.. die POST die achter schermnaam komt te staan is geen veldnaam en dus moet het tussen ' ' in sql
dus dan zou je krijgen
SELECT * FROM gebruikers WHERE schermnaam = ' '
en tot slot weer met de php erin verwerkt krijg je:
SELECT * FROM gebruikers WHERE schermnaam = '".$_POST['schermnaam']."'