ik wil een MySQL-database weergeven met php, maar struikel over één probleempje:
het gaat om een databank met titelgegevens van boeken. De velden die er in het voorbeeld toe doen zijn 'auteur' en 'titel'. Die beide weergeven is niet echt het probleem. De weergave is dan als volgt:
"Auteur, titel"
Het probleem treedt op als er geen auteur is ingegeven in het auteursveld. Dan wordt die weergave natuurlijk:
", Titel"
Ik zou nu willen dat die komma verdwijnt als er geen auteur is ingegeven. Het scriptje dat ik daarvoor had gemaakt, is het volgende (het werkt dus wel niet, en ik zou willen dat het wel werkt! ):
(alle html-opmaak heb ik eruitgezwierd)
Code: Selecteer alles
<?php
$username="user";
$password="paswoord";
$database="db";
mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query="SELECT * FROM db ORDER BY auteur";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
$i=0;
while ($i < $num) {
$titel=mysql_result($result,$i,"titel");
$auteur=mysql_result($result,$i,"auteur");
En hier komt het kritieke stukje:
Code: Selecteer alles
if ($auteur=NULL) {
echo $titel;
}
else {
echo $auteur.", ".$titel;
}
Wat er door het bovenstaande stukje code gebeurt, is dat in alle referenties enkel de titel verschijnt. Ik vermoed dus dat door het feit dat hij ergens in de databank een NULL-waarde terugvindt bij auteur, toch alle titels worden aangetast. Hoe kan ik dit oplossen?
Code: Selecteer alles
$i++;
}
?>