Vaak voorkomende foutmeldingen in PHP-scripts
In dit artikel vind je uitleg en oplossingen voor foutmeldingen die je bij de installatie of het gebruik van een PHP-script kunt tegenkomen.
Can't connect to local MySQL server through socket '/tmp/mysql.sock'
Failed opening required 'Dateiname.php' (include_path='.:/includes') in mnt/am/0/htdocs/est.php on line
Warning: fopen(../data/colors.inc): failed to open stream: Permission denied in /mnt/02/007/htdocs/save_.inc on line
Parse error: parse error in /ordner/ordner/datei.php [Pfad + Dateiname] on line
HTTP Fehler: 500 Internal Server Error
Warning: Unable to access..."? (bij het gebruik van Joomla)
Om fouten te kunnen traceren, raden we aan deze parameter te activeren. Dit doe je met een regel in het bestand php.ini. Voeg in dit bestand de volgende tekst in:
error_reporting = E_ALL
display_errors = On
Je kunt deze instelling later weer uitschakelen, bijvoorbeeld als je de fout hebt opgespoord.
Uitleg: Dit probleem treedt op wanneer het script probeert te verbinden met de MySQL-server op de lokale machine. Dit gebeurt wanneer in de configuratie van het script geen MySQL-gegevens zijn ingevoerd.
Oplossing:
Voer in de configuratie van het script correcte MySQL-gegevens in, in de klantenlogin via het menu Instellingen / Databasebeheer.
Uitleg: Dit foutbericht wordt weergegeven wanneer het script een vereist bestand niet kan vinden. De melding kan ook optreden in scripts die PEAR gebruiken, als een onjuiste versie van PHP is gemapt.
Oplossingen:
a) Gebruik je een script dat PEAR nodig heeft? Controleer dan of je een recente PHP-versie gebruikt. Soms is het nodig hiervoor een .htaccess-bestand aan te maken of een extra regel in dit bestand op te nemen.
b) Zoek het bestand dat in de foutmelding wordt genoemd. Misschien is dit bestand in een verkeerde map geplaatst. Zet het dan in de juiste map.
c) Controleer de toegangsrechten van het bestand.
De toegangsrechten van bestanden instellen (CHMOD)
d) Lees de handleiding van het script goed door en controleer of je een extra pakket dient te installeren om dit script uit te voeren.
e) Zoek desbetreffend bestand op je harde schijf en plaats het handmatig in de juiste map van je webspace.
Uitleg: Deze fout betekent dat de toegangsrechten voor het genoemde bestand fout of niet aanwezig zijn.
Oplossing:
Pas de toegangsrechten aan in overeenstemming met de foutmelding. Bij ‘failed to open...’ stel je bijvoorbeeld leestoegang in, bij ‘failed to write...’ schrijftoegang.
De toegangsrechten van bestanden instellen (CHMOD)
Uitleg: Deze foutmelding duidt op een syntaxfout.
Oplossing:
Controleer in het aangegeven bestand de desbetreffende regel. Is elk commando met een ‘;’ afgesloten? Of ontbreekt misschien een aanhalingsteken?
Uitleg: Deze fout ontstaat als de toegangsrechten fout of niet geconfigureerd zijn of als een php.ini-bestand in de hoofdmap aanwezig is.
Oplossingen:
a) Controleer of in de hoofdmap een php.ini-bestand aanwezig is. Zo ja, verander de naam van dit bestand en kijk of de foutmelding daardoor verdwijnt.
b) Controleer de toegangsrechten van mappen en bestanden en wijzig deze als ze niet of niet juist zijn geconfigureeerd.
De toegangsrechten van bestanden instellen (CHMOD)
Uitleg: Deze melding treedt meestal op door een fout pad. Meestal is dit pad in een PHP-configuratiebestand vastgelegd. Een fout pad in een PHP-script kan leiden tot één van de volgende foutmeldingen:
"Warning: Unable to access /mnt/be1/02/037/0004/htdocs/include/html_helper.php in /mnt/cr2/04/640/00011/htdocs/include/path.php on line 80"
"Fatal error: Failed opening required '/mnt/be1/02/037/0004/htdocs/include/html_helper.php' (include_path='') in /mnt/cr2/04/640/00011/htdocs/include/path.php on line 80"
Meer informatie over bestandspaden vind je hier:
Hoe luiden de bestandspaden?
Zorg ervoor dat je het bestandspad hebt geconfigureerd, zoals in dat artikel staat beschreven.
Voorbeeld: /home/strato/www/eerste twee_letters/www.gewenstenaam.nl/htdocs/
In Joomla moet het bestand configuration.php ook het correcte absolute pad bevatten.
Voorbeeld:
$mosConfig_absolute_path = '/home/strato/www/ge/www.gewenstenaam.nl htdocs/';
$mosConfig_cachepath = '/home/strato/www/ge/www.gewenstenaam.nl/htdocs/cache