Wat moet ik nu doen om 1 variabele uit een database te weten?


<?
$query = mysql_query ("
SELECT titel
FROM dr_artikel
WHERE id = '" . $_GET['aid'] . "'
");

echo"De titel is: ".$query;

?>


of


<?
$query = mysql_query ("
SELECT titel
FROM dr_artikel
WHERE id = '" . $_GET['aid'] . "'
");

while($list = mysql_fetch_array($query))
{
echo"De titel is: ".$list['titel'];
}
?>
Probeer het eens uit, daar leer je het meeste van. Zet bovenin je script dit en je krijgt precies te zien wat er eventueel fout is.

error_reporting(E_ALL);
Ik weet dat het tweede de oplossing is, maar zou het niet op een eenvoudigere manier kunnen?
Wanneer je 1 record ophaalt, is het niet nodig om een while te gebruiken. Verder valt er weinig te vereenvoudigen, het is eerder noodzakelijk om de boel wat uit te breiden.

Je controleert bv. niet of $_GET['aid'] bestaat en nummeriek is en je controleert niet of de query wel is gelukt. En queries kunnen altijd mislukken, zelfs al is de SQL goed.

offtopic: $query is een rare naam voor de data die hierin staat, het is namelijk geen query maar een resultset. $result is dan een betere naam. De query is het stukje SQL: "SELECT blablabla"
Je kan je query ook nog 'versnellen' door er LIMIT 1 achter te zetten ;) . Dan stopt hij als er één resultaat is gevonden, bespaart je in grote DB wat tijd !

Reageren