Php Error

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Php Error

    Hallo Leute

    ich bin noch php newbie und bekomm ne fehlermeldung die so aussieht :

    Warning: fopen(./_log/search_log.txt): failed to open stream: Permission denied in /hp/aa/af/nq/www/suche.php on line 114

    Warning: flock(): supplied argument is not a valid stream resource in /hp/aa/af/nq/www/suche.php on line 115

    Warning: fwrite(): supplied argument is not a valid stream resource in /hp/aa/af/nq/www/suche.php on line 116

    Warning: flock(): supplied argument is not a valid stream resource in /hp/aa/af/nq/www/suche.php on line 117

    Warning: fclose(): supplied argument is not a valid stream resource in /hp/aa/af/nq/www/suche.php on line 118

    Hier der Quelltext dazu:

    #################################################
    # 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);
    }


    So kann mir mal einer helfen und mir das verständlich (ganz wichtig) erklären was ich dort ändern muss

    Vielen Dank

  • #2
    Erst mal könntest du deinen Code in die [ PHP ] Tags einklammer. Dann wird der nämlich bunt und man sieht in in Farbe.

    Dann solltest du einfach mal deine Fehlermeldung von Englisch auf Deutsch übersetzen.

    Wenn du das gemacht hast wird dir auffallen dass

    Warning: fopen(./_log/search_log.txt): failed to open stream: Permission denied in /hp/aa/af/nq/www/suche.php on line 114
    Soviel heißt wie: He auf die Datei ./_log/search_log.txt auf die du in Zeile 114 zugreifen willst , darf ich nicht zugreifen weil ich keine berechtigung habe.

    Alle weiteren Fehlermeldungn resultieren daraus das du keine Verbindung wegen besagten fehlenden Rechten aufbauen konntest => Rechte der Datei so ändern dass PHP drauf zugreifen darf und schon ist zumindest der Fehler beseitigt.

    Gruß Sono

    Kommentar


    • #3
      danke für die schnelle hilfe

      aber wie mach ich das bitte ???

      Kommentar


      • #4
        Mit einem guten FTP Progi kannst du die Rechte einzelner Dateien setzen.
        CHMOD 755 oder 777 (wobei ich 755 bevorzugen würde)

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          Ich vermute mal dass dein Script auf irgendnem webspace . Zumindest lassen die komischen Pfadnamen in deiner Fehlermeldung drauf schliesen.

          Ich schätze mal weiter ganz dass du nur ftp zugang hast . Du musst entweder mit deine ftp client die rechte der Datei so ändern dass der Webserver auf sie zugreifen kann, oder dass es jeder kann also auch der webserver, wobei die zweite lösung bescheiden ist.

          Du solltets hier mal ein wenig nachlesen.

          http://www.php.net/manual/de/ref.filesystem.php

          PS.
          Dich interessieren die Funktionen chown und chmod

          Gruß Sono

          Kommentar


          • #6
            Das problem ist es ist nicht mein webserver und ich kann auch keine PHP.ini
            finden

            zum zweiten ich benutze den ftp clienten filezilla falls ihr damit was anfangen könnt achso und der server ist von 1blu (ich weiss scheisse)

            Kommentar


            • #7
              Also mit FileZilla (den ich auch benutze) kannst du die Rechte von Dateien sehr wohl setzen.

              Gruss

              tobi
              Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

              [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
              Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

              Kommentar


              • #8
                wo denn ???

                (DANKE)

                Kommentar


                • #9
                  keiner weiss rat ???

                  Kommentar


                  • #10
                    Original geschrieben von pmf2
                    keiner weiss rat ???
                    Doch natürlihc, aber das hättest du auch selber herausfinden können.
                    Klick mit der rechten Maustaste auf dein Opfer, dann geh auf "Dateiattribute" und dann stell den entsprechenden CHMOD ein.

                    Kommentar


                    • #11
                      Original geschrieben von pmf2
                      keiner weiss rat ???
                      Ich würde eher sagen, es will keiner einen Rat wissen, da das nun wirklich selbst herauszufinden ist.

                      Ohne das Programm jemals gesehen zu haben, würde ich mit einem Rechtsklick auf die entsprechende Datei anfangen.
                      mfg - sagg

                      Kommentar


                      • #12
                        danke

                        hab alle häkchen angeklickt fehlermeldung kommt aber trotzdem

                        Kommentar


                        • #13
                          Für welche Datei hast du die Rechte denn gesetzt?
                          mfg - sagg

                          Kommentar


                          • #14
                            suche.php

                            Kommentar


                            • #15
                              Du musst natürlich die Rechte der txt-Datei ändern, darauf greift suche.php ja zu und bekommt ein "Permission denied" zurück.

                              Kommentar

                              Lädt...
                              X