Christopher: Voting - Fehlermeldung

Grüß euch! Folgende Fehlermeldung kommt:

Warning: fwrite(): supplied argument is not a valid stream resource in /home/novak/www/new/voting.php on line 32

Das ist mein Script! Bitte um Hilfe Danke Christopher!

<?PHP

function ip_sperre() {
   global $REMOTE_ADDR;
   $reloadlogdatei = "ips.txt";
   $anzahleintraege = 50; // nach sovielen ip´s werden die alten gelöscht
   $zeitlimit = 3600; // solange bleibt eine ip gesperrt

// prüfen ob datei existiert wenn nicht erstellen
   if(!file_exists($reloadlogdatei)) {
      $datei = fopen($reloadlogdatei,"w+");
      fclose($datei);
   }
   $fp = file($reloadlogdatei);
   $size = sizeof($fp);

// beschreibt die Datei, wenn Liste voll
   if($size >= $anzahleintraege){
      fwrite("ips.txt","a+");
      // Prüft, ob eine IP in der Liste steht
   }
   else {
      $ausgabe=false;
      for ($i=0;$i<$size;$i++) {
         $zeile = explode("|",$fp[$i]);
         if ($zeile[0] == $REMOTE_ADDR AND $zeile[1] > (time()-$zeitlimit)){
            // ip wird gefunden
            $ausgabe = true;
         }
      }
      // protokolliert die ip
      fwrite("ips.txt","a+");
   }
   return $ausgabe;
}

////////////////////////////////////
// erstmal ein paar Einstellungen //
////////////////////////////////////

$frage = "Wie gefällt Ihnen die neue Seite";  // Thema der Abfrage

$anzahl = 5;  // Anzahl der Auswahloptionen

$option[0] = "Sehr Gut";  // Option 1
$option[1] = "Gut";  // Option 2
$option[2] = "Mittelmaessig";  // usw.
$option[3] = "Schlecht";
$option[4] = "Sehr Schlecht";

$farbe[0]="#0000FF";  // Farbe des 1. Balkens
$farbe[1]="#00FF00";  // Farbe des 2. Balkens
$farbe[2]="#FF0000";  // usw.
$farbe[3]="#FFFF00";
$farbe[4]="#00FFFF";

$datei = "ergebnis.txt";  // Ergebnisdatei

//////////////////////////////////////////////////////////////////////////////////////////
// so, und hier das Script:                                                             //
//                                                                                      //
// zuerst oeffnen wir die Ergebnisdatei, bzw. legen diese neu an, falls nicht vorhanden //
//////////////////////////////////////////////////////////////////////////////////////////

if (file_exists($datei)) {  //existiert die Datei?
    $votes=file($datei);  //dann in Array "$votes" einlesen
}
else {  //wenn nicht
    $handle = fopen($datei, "w+");  //Datei anlegen
    $i=0;
    for ($i; $i<$anzahl; $i++) {  //fuer jede Option
        fputs($handle,"0\n");  //"0" in Datei schreiben (mit Zeilenvorschub)
    }
    fclose($handle);  //Datei wieder schliessen
    $votes=file($datei);  //Datei in Array "$votes" einlesen
}

//////////////////////////////////////////////////////////////////////////////////////////////////
// wurde abgestimmt? wenn ja, dann muessen wir das Ergebnis anpassen und in die Datei schreiben //
//////////////////////////////////////////////////////////////////////////////////////////////////

if (($submitvote) && (ip_sperre()==false)) {
    settype($votes[$radio],"integer");
    $votes[$radio]++;  //entsprechende Option um eins erhoehen
    $handle = fopen($datei, "w+");  //Datei oeffnen
    $i=0;
    for ($i; $i<$anzahl; $i++) {  //fuer jede Option
        settype($votes[$i],"integer");
        fputs($handle,"$votes[$i]\n");  //Anzahl in Datei schreiben (mit Zeilenvorschub)
    }
    fclose($handle);  //Datei wieder schliessen
}

////////////////////////////////////////////////////////////
// jetzt startet die Ausgabe! zuerst mal die Ueberschrift //
////////////////////////////////////////////////////////////

echo "<H1>".$frage."</H1>\n\n";  //Ueberschrift schreiben

////////////////////////////////////////
// dann das Ergebnis als Balkengrafik //
////////////////////////////////////////

$i=0;
for ($i; $i<$anzahl; $i++) {  //fuer jede Option
    $j=0;
    echo $option[$i]."&nbsp;&nbsp;&nbsp;<FONT COLOR="".$farbe[$i]."">";  //Option ausgeben und Farbe setzen
    for($j; $j<$votes[$i]; $j++) {  //fuer Anzahl der Votes
        echo "|";  //je einen Strich ausgeben
    }
    echo "&nbsp;&nbsp;&nbsp;".$votes[$i]."</FONT><BR>\n";  //Balken zu ende, also Zeilenumbruch
}

////////////////////////////////////
// am Schluss das Auswahlformular //
////////////////////////////////////

echo "<FORM ACTION="".$PHP_SELF."" METHOD="Post">\n";  //Formular anfangen
$i=0;
for ($i; $i<$anzahl; $i++) {  //fuer jede Option
    echo "<INPUT TYPE="radio" NAME="radio" VALUE="".$i."" size="20">".$option[$i]."<BR>\n";  //Radiobutton anzeigen
}

echo "<INPUT TYPE="Submit" VALUE="Abstimmen" NAME="submitvote" size="20"></FORM>";  //Formularende

?>

  1. Holladiewaldfee,

    Warning: fwrite(): supplied argument is not a valid stream resource in /home/novak/www/new/voting.php on line 32

    Was sagt uns diese Fehlermeldung im Bezug auf die angesprochene Zeile?

    fwrite("ips.txt","a+");

    Was soll das sein? Wolltest Du hier evtl. fopen() verwenden und nicht fwrite?

    Bitte kürze beim nächsten mal den Quelltext auf den relevanten Teil.

    Ciao,

    Harry

    --
      Irgendwann kommt die Waldfee - oder auch nicht ... (Projektphase: Keine Ahnung)
      Bis dahin:
      Ski- und Bergtouren in den Tölzer Voralpen und im Karwendel
    1. Hi,

      Bitte kürze beim nächsten mal den Quelltext auf den relevanten Teil.

      Und markiere die Zeile mit der Fehlermeldung.

      cu,
      Andreas

      --
      Warum nennt sich Andreas hier MudGuard?
      http://www.schreinerei-waechter.de/
      Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
      1. Hello,

        Und markiere die Zeile mit der Fehlermeldung.

        Obwohl einem der Fehler dieses Mal direkt ins Auge sprang *aua*

        Außerdem fehlt dem Script wieder die Locking-Strategie.
        Das ist so nicht brauchbar. Wird wirklich Zeit, dass ich mich nochmal ransetze :-((

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

        Tom

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