Fejlfinding
Er PHP ikke korrekt konfigureret til Apache2, så indsæt følgende nederst i Apache-filen 'httpd.conf' :
PHPIniDir "C:\\Programmer\\PHP\\"
LoadModule php5_module "C:\\Programmer\\PHP\\php5apache2_2.dll"
Genstart Apache så webserveren kan finde PHP som modul.
--
Test PHP-indstillingerLav en fil og døb den 'testfil.php'. Skriv så følgende i filen:
[php] echo 'Hej verden!';
phpinfo();
[/php]
Gem filen i roden af din webserver, fx under \Apache2.2\htdocs
Tjek nu installationen ved at køre testfil.php via din browser, dvs.
http://127.0.0.1/testfil.php Får du ikke et skema over PHP-opsætningen, så må du køre PHP-installeren igen og klikke 'Change' for at installere den rette extension.
Når det er gjort, så skulle det køre.
--
Kontrollér Windows PathEr der stadig bøvl, så sørg for at der i Windows PATH systemet er sat gyldig sti til
;C:\Programmer\MySQL\MySQL Server 5.0\bin
;C:\Programmer\PHP
Gå i Windows Kontrolpanel -> System -> Avanceret -> Miljøvariabler -> Path
- klik redigér og indsæt sti med et foranstillet semikolon ';'
- genstart din computer og bøvlet er løst.
--
PHP unoder
Det nye up-to-date servermiljø kører bedst med 'well coded' scripts.
Hvis du har opgraderet fra en tidligere fungerende webserver, skal nogle af dine hidtidige PHP-applikationer måske renses for små unoder for at blive korrekt afviklet.
Eksempler:
- Undgå short_open_tag, dvs. undlad kald som
<? phpkode; ?> men brug i stedet
<?php phpkode; ?>
- Undgå printkommandoen
<?=$var;?> men brug
<?php print($var); ?> eller
<?php echo $var; ?>
- I stedet for
$PHP_SELF gælder nu kun superglobals som
$_SERVER['PHP_SELF']
- Betinget tjek som
if($var) {do something;} skal helst være
if(isset($var)) {do something;}
- Funktionen
mysql_connect() skal kende den dedikerede port (fx '3306') og root password (fx 'rootpass')