Minitut

Wanneer je je als beginner gaat verdiepen in databases dan kom je al snel deze constructie tegen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?
// een willekeurige query
$sql = "SELECT * FROM tabel ORDER BY veldnaam";
$res = mysql_query ($sql) or die (mysql_error ());
?>


In de eerste regel van de code wordt een query in elkaar gezet.
In de tweede regel wordt de query uitgevoerd en als er iets fout gaat komt er een error op het scherm.

Eigenlijk is dat een heel gebruiksonvriendelijke manier van programmeren. Wanneer er iets niet helemaal goed gaat, krijgt de bezoeker van je pagina alleen die error te zien, en verder niets. Het zou beter zijn als de error gemeld werd, maar dat de code daaronder evengoed uitgevoerd wordt zodat de bezoeker wat meer in beeld krijgt dan alleen een wit scherm met een error.

Daar is een heel simpele oplossing voor: gebruik geen or die

Doe in plaats daarvan dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
// een willekeurige query
$sql = "SELECT * FROM tabel ORDER BY veldnaam";
if (!($res = mysql_query ($sql))) {
  trigger_error (mysql_error ());
}

else {
  // hier de rest van de code als het goed is gegaan
  while ($row = mysql_fetch_array ($res)) {
    // hier de data echoën
  }
}

?>


Als er dan iets fout gaat krijgt de bezoeker een foutmelding, maar de rest van de pagina krijgt hij gewoon in beeld. Als programmeur zou je op deze manier ook queryfouten kunnen loggen in een tabel.

Tot zover deze mini-tut. Ik vind dat "or die" niet gebruiksvriendelijk is. Als jij dat ook vindt, weet je nu hoe je het anders aan kunt pakken :-)

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Minitut

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.