Fouten en oplossen

Meest voorkomende foutmeldingen en hoe los je ze op:

Quote:
Parse errors:

In het geval van parse errors klopt er vaak iets niet aan de syntax van je PHP script. Laten we eens naar een voorbeeld kijken:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
      ini_set('display_errors', 'On');  // error reporting aan
      error_reporting(E_ALL);
      
      $sNaam = 'Kees'
      echo $sNaam;
      ?>


Dit script geeft de volgende foutmelding:

Parse error: syntax error, unexpected T_ECHO in /pad/naar/bestand.php on line 6

De foutmelding geeft vrij veel informatie over de fout die opgetreden is.
Het betreft een parse error en wel door een fout in de syntax. PHP verwacht de echo op regel 6 om een of andere reden niet.
En dat klopt ook wel, in het script is vergeten om regel 5 netjes met een ; af te sluiten.


Quote:
Unexpected $end

Deze foutmelding betekent dat er een onverwacht einde is
Wat vaak betekent dat je ergens een } bent vergeten

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
      ini_set('display_errors', 'On');
      error_reporting(E_ALL);
      if(isset($_GET['naam']))
      {

      echo $_GET['naam'];
      ?>


Foutmelding: Parse error: syntax error, unexpected $end in /pad/naar/bestand.php on line 8

Dit kun je oplossen door simpelweg een } na de echo $_GET['naam']; te zetten


Quote:
Undefined variable

Deze error betekent dat er ergens in het script een variabele is die niet bestaat

zoals hier:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
      ini_set('display_errors', 'On');
      error_reporting(E_ALL);
      
      Echo $variable;
      ?>


Notice: Undefined variable: variable in /pad/naar/bestand.php on line 5
dit kun je oplossen door de variabel aantemaken:

$variable = 'geef hem een waarde';


Quote:
warnings

dit zijn fouten in het script alleen geen fatale fouten dus het script word niet gestopt

foutmelding:
Warning: include(bestaat_niet.php) [function.include]: failed to open stream: No such file or directory in /pad/naar/bestand.php on line 5

Warning: include() [function.include]: Failed opening 'bestaat_niet.php' for inclusion (include_path='.:') in /pad/naar/bestand.php on line 5

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
      ini_set('display_errors', 'On');
      error_reporting(E_ALL);
      
      include 'bestaat_niet.php';
      ?>


dit komt omdat het bestand wat je include niet bestaat


Quote:


Headers already sent :
Een lastige bug zeker voor beginners
dit komt omdat een kleine spatie al voor problemen kan zorgen
Zorg daarom dat je goed oplet

voorbeeld:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
      ini_set('display_errors', 'On');
      error_reporting(E_ALL);
      
      echo 'Hello World!';
      header('Refresh: 3; url=index.php');
      ?>


Warning: Cannot modify header information - headers already sent by (output started at /pad/naar/bestand.php:5) in /pad/naar/bestand.php on line 6

Bij deze error komt het omdat er een echo voor de header staat dus moeten we de echo en de header omdraaien

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Als je het op phphulp zet :
  2. Voordat je iets op phphulp post :
  3. Fouten en oplossen
  4. slot

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.