Tom: Error 500

Beitrag lesen

Hello,

#################################################

Logdatei schreiben

foreach ($search_arr as $search_exp) {

$zeilen = file("./_log/search_log.txt");
$anz_zeilen = sizeof($zeilen);

$x=0;

Datenfile auslesen

for ($i=0; $i<$anz_zeilen; $i++) {

list ($search_word, $search_num) = split("\|", chop($zeilen[$i]));

// wenn Suchbegriff gefunden wird
if ($search_exp==$search_word) {
  $search_num++;
  $i-2;
  $x++;
}
     $new_log .= "$search_word|$search_num\n";
}

// wenn der Suchbegriff nicht schon geloggt wurde
if ($x==0) {
$search_num = "1";
    $new_log .= "$search_exp|$search_num\n";
}

$data = fopen("./_log/search_log.txt","w+");
flock($data,1);
fwrite($data, $new_log);
flock($data,3);
fclose($data);
unset($new_log);
}
#################################################

Woher der 500er kommt, sehe ich auch nicht auf den ersten Blick. Könnte evtl. an preg_match() liegen. Aber dass das Locking falsch ist, sehe ich auf einen Blick. Das musst Du reparieren.

Es muss der gesamte Vorgang im Schutze des Exclusive Locks stattfinden.

Sperre anfordern
  Daten lesen
  Daten verändern
  Daten wegschreiben
  Sperre aufheben

Harzliche Grüße aus http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau