Ik ben begonnen in het boek: PHP applicatieontwikkeling van Peter Kassenaar.
Hier gebruiken ze mysqli en je moet de code op deze wijze schrijven:
<?php
//Laat de begroting categorie zien
$query = "SELECT * FROM begroting WHERE budget_id = 2 ORDER BY begroting_naam";
//Stap 3 ( de query uitvoeren
if($result = mysqli_query($db, $query)){
echo "Stap 3 ) De query \"$query\" is met succes uitgevoerd <br />";
}
else{
echo "FOUT: er is een fout opgetreden bij het uitvoeren van de query $query";
exit;
}
echo '<table class="budget2" cellpadding="2" cellspacing="2" >';
while ($row = mysqli_fetch_array($result)){
echo "<tr><td><a href=\"?begroting_id={$row['begroting_id']}&budget_id=2\" title=\"{$row['begroting_naam']}\">{$row['begroting_naam']}</a></td></tr>";
}
echo "</tr></table>";
?>
Het is nu wel minder duidelijk waar de code staat omdat deze ook rood is.
Vinden jullie dat ik het op deze manier nu moet aanleren of niet??
@Elsy: Dat is een zeer onduidelijke/slechte manier. Niet aanleren dus. Zie de post van Tamara. Verder is het gebruik van enkele quotes bij echo handiger omdat je dan de dubbele html quotes niet hoeft te escapen.
<?php
echo '<tr><td><a href="?begroting_id=' . $row['begroting_id'] . '&budget_id=2" title="' . $row['begroting_naam'] . '">' . $row['begroting_naam'] . '</a></td></tr>';
?>
/*dan ga je hier met gegevens uit database aan de slag*/
$query = "je query";
if(!$result = mysql_query($query)){
/*fout in je query, maar niet gelijk hele script stoppen, alleen fout triggeren*/
trigger_error(mysql_error());
}
else{
/* Resultaten verwerken, fetchen en dergelijke, evt. tabel aanmaken*/
echo 'De query: '.$query.' is gelukt. Dit zeg je normaal gesproken natuurlijk niet,
maar laat zien hoe je met single quotes en vars buiten quotes echo\'d';
while($rows = mysql_fetch_assoc($result)){
/*tabel vullen oid
}
}
/* Belangrijk! omdat je geen exit bij je error hebt gebruik, plaats je hier bijvoorbeeld nog standaard footer,
je tabel zal je niet hebben, maar nog wel opmaak of andere code*/
?>
?
Onbekende gebruiker
24-07-2009 11:11
Hmm, gewoon op de manier doen dus die ik al deed.
Waarom dan toch in dit boek zetten.
Verwarrend wat nu echt goed is en wat niet.
Hebben jullie misschien een boek waar het correct in staat?
De eeuwige (hopelijk ooit wel afgelopen) kritiek dat php veel te veel toelaat. PHP is gewoon een heel flexibele taal, die vars binnen quotes toe laat. Zowel procedureel als OOP toelaat enz.
EDIT: Let wel op, ik ben van mening dat een groot pluspunt van PHP het instapniveau is, en ze dat niet zomaar overboord kunnen zetten. OOP afdwingen zal dus in mijn ogen verkeerd zijn. Een goede balans is vast wel te vinden.