Doe ik iets verkeerd?

Als ik dit script uitvoer:
<?
$global_dbh = mysql_connect($hostname, $username, $password);
mysql_select_db($db, $global_dbh);
$query = "SELECT * FROM leden WHERE vvnaam = '$_POST[vvnaam]' AND vanaam = '$_POST[vanaam]'";
$result_id = mysql_query($query) or die(mysql_error($query));
$leden = mysql_fetch_assoc($result_id);
?>

en vervolgens:

<table align="center" border="1">
<TH colspan="4"><h1>Gegevens</h1>
<TR><TH colspan="2">Echte leven<TH colspan="2">Virtuele leven
<TR><TD>Voornaam:<TD><?echo $leden['evnaam'];?><TD>Voornaam:<TD><?echo $leden['vvnaam'];?>
<TR><TD>Achternaam:<TD><?echo  $leden['eanaam'];?><TD>Achternaam:<TD><?echo $leden['vanaam'];?>
</table>

uitvoer zou ik toch resultaat moeten krijgen? Nu zijn de variabelen leeg
Weet iemand wat ik fout doe?

De database is gevuld en de veld- en tabelnamen kloppen
<?php
'$_POST[vvnaam]'
?>
variabelen uit de quotes halen, ook uit die van je query.
en escapen, tenzij je SQL injectie wilt :-)
Foutafhandeling inbouwen.
Je controleert helemaal niets.
Verder horen $vars buiten de quotes.
$_POST is een array() dus gebruik de enkele quotes.
Het is gelukt, was mijn eigen domme fout.

For the record:
Foutafhandeling werd al toegespast. heb ik alleen even buiten het script gelaten
Zet ook een spatie hier tussen



<?php

#fout
<?echo $string;?>

#goed
<?=$string;?>
<?php echo $string;?>
<? echo $string;?>

?>

Reageren