Hallo, ik heb een probleem, een groot probleem. Elke keer wanneer ik mijn script uit test, loopt mn server vast. Dat is niet mooi. Ik denk dat hij in de while blijft lopen. Maar ik kan geen fout ontdekken (of kijk ik er over heen?) Dit script zou een index van de map /var/registratie moeten geven en van alle files een link maken naar het query-script.
<code>
<?
//met dank aan php.net
$de_array = Array();
$handelaar = opendir('/var/registratie');
while (false !== ($file = readdir($handelaar))) {
if ($file != "." && $file != "..") {
$de_array[] = $file;
}
}
closedir($handelaar);
sort ($de_array);
reset ($de_array);
while (list ($key, $val) = each ($de_array)) {
echo "<tr><td><a href=adm.php?bin=$val>$val</a></td></tr>";
}
?>
</code>
That' s it.

Bij voorbaat dank
Ik heb nog even zitten kijken, httpd geeft inderdaad in zijn errorlog dat child-processen niet reageren en verstuurt TERM-signalen. Dat wijst dus op een loop. Ook mijn swap zat op 99% vol.
Vervang die tweede while eens door een foreach() :)
gedaan - zelfde probleem, ik denk dat het aan de map lag die een ; in de naam had. Kwam ik net pas achter, en het probleem was gefixt. hoe zon teken binnen unix in een bestandsnaam kan weet ik ook niet. Is toch onmogelijk?
Ik weet niet of voor Windows en Unix hetzelfde geldt, maar voor windows mogen de volgende tekens niet:

\ / : * " < > |

; Leek mij eigenlijk ook van niet maar in Windows getest en het kan gewoon... :)

Reageren