Fehlermeldung errno2

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

  • Fehlermeldung errno2

    Das Problem der Fehlermeldung bei Bildupload wurde hier zwar schon ein paarmal angesprochen, aber irgendwie nie befriedigend gelöst.

    Warning: filesize(): Stat failed for ../upload_pic/20041208150121_186256.jpg (errno=2 - No such file or directory) in /httpd/stickwalking.de/data/neu/admin_board/bericht_upload_save.php on line 128 (gleiche Meldung für 84 -Tumbnail)


    So das die Fehlermeldungen. safe_mod steht auf off, Ordner haben Schreib- und Ausführungsrechte, der angegebene Pfad stimmt

    [PHP<? require("../admin_board/inc/functions.php"); ?>
    <html>
    <head>
    <title>Bericht einsenden...</title>
    <link rel="stylesheet" href="css/style.css" type="text/css">
    </head>

    <?php

    if (!isset($abdiepost))
    {
    ?>
    <?
    }
    else
    {
    // Daten abgeschickt, dann DB-Eintrag für alle Daten außer Bilder vornehmen
    $zeitstempel= date ("Y.m.d");

    $db = mysql_pconnect($host, $user, $password);
    mysql_select_db($dbase,$db);
    $sql = "INSERT INTO berichte (header, content, name,telefon,ok) VALUES ('$header', '$content', '$name','$telefon','$ok')";

    $result = mysql_query($sql,$db);

    $upload_id = mysql_insert_id(); // für BIGINT: LAST_INSERT_ID(); // eben erzeugte ID speichern

    // foreach($bilder as $bild) // alle upgeloadeten Bilder durchlaufen
    for ($i=0;$i<sizeof($bilder);$i++)
    {
    if ($bilder[$i][0]!="")// oder: ($bilder[$i][0]!="") && ($bilder[$i][0]!="none")// weitertesten
    {
    $pic = Datum() ."_". Zufall(); // Bildnamen erzeugen: Datum + Zufallszahl

    $k_size = @getimagesize ($bilder[$i][0]);
    $g_size = @getimagesize ($bilder[$i][0]);

    $G_bild = $bilder[$i][0];
    $K_bild = $bilder[$i][0];

    // Bild-Größen-Berechnung Andre: Breite festlegen, Höhe ist variabel!
    // Thumbnail
    if ($k_size[0]>=$k_size[1]) // Breitformat
    {
    if ($k_size[0]>$K_MB) // Originalbreite größer als vorgegeben
    {
    $K_NB = $K_MB; // Breite auf max setzen
    $K_NH = round(($K_MB / $k_size[0]) * $k_size[1]); // Höhe berechnen
    }
    else // Maße beibehalten
    {
    $K_NB = $k_size[0];
    $K_NH = $k_size[1];
    }
    }
    else // Hochformat
    {
    if ($k_size[0]>$K_MH) // Breite > max. Höhe?
    {
    $K_NB = $K_MH; // Breite auf max. Höhe setzen
    $K_NH = round(($K_MH / $k_size[0]) * $k_size[1]); // Höhe berechnen
    }
    else // Maße beibehalten
    {
    $K_NB = $k_size[0];
    $K_NH = $k_size[1];
    }
    }

    // Verarbeitung Bild
    if ($k_size[0] == $K_NB && $k_size[1] == $K_NH) // Bild nicht verkleinern, nur kopieren
    {
    $bildname = $pic."_small.jpg";
    @copy ($K_bild, $upload_pfad.$bildname);
    }
    else // Verkleinertes Bild speichern
    {
    $bildname = $pic."_small.jpg";
    $td=@imageCreateTrueColor($K_NB, $K_NH);
    $ts=@imageCreateFromJPEG($K_bild);
    @imagecopyresampled($td, $ts, 0, 0, 0, 0, $K_NB, $K_NH, $k_size[0], $k_size[1]);
    imageJPEG($td,$upload_pfad.$bildname,85);
    }
    $pic_small_size=filesize($upload_pfad.$bildname); // Speichergröße des Thumbnails merken

    // Grossbild
    if ($g_size[0]>=$g_size[1]) // Breitformat
    {
    if ($g_size[0]>$G_MB) // Originalbreite größer als vorgegeben
    {
    $G_NB = $G_MB; // Breite auf max setzen
    $G_NH = round(($G_MB / $g_size[0]) * $g_size[1]); // Höhe berechnen
    }
    else // OriginalBreite < vorgegebene Breite : Maße beibehalten
    {
    $G_NB = $g_size[0];
    $G_NH = $g_size[1];
    }
    }
    else // Hochformat
    {
    if ($g_size[0]>$G_MH) // Breite > max. Höhe?
    {
    $G_NB = $G_MH; // Breite auf max. Höhe setzen
    $G_NH = round(($G_MH / $g_size[0]) * $g_size[1]); // Höhe berechnen
    }
    else // Maße beibehalten
    {
    $G_NB = $g_size[0];
    $G_NH = $g_size[1];
    }
    }

    // Verarbeitung GrossBild
    if ($g_size[0] == $G_NB && $g_size[1] == $G_NH) // Bild nicht verkleinern, nur kopieren
    {
    $bildname = $pic.".jpg";
    @copy ($G_bild, $upload_pfad.$bildname);
    }
    else // Verkleinertes Bild speichern
    {
    $bildname = $pic.".jpg";
    $td=@imageCreateTrueColor($G_NB, $G_NH);
    $ts=@imageCreateFromJPEG($G_bild);
    @imagecopyresampled($td, $ts, 0, 0, 0, 0, $G_NB, $G_NH, $g_size[0], $g_size[1]);
    imageJPEG($td,$upload_pfad.$bildname,85);
    }
    [COLOR=red] $pic_size=filesize($upload_pfad.$bildname); // Speichergröße des Grossbildes merken[/COLOR]

    // Daten Gross- und Kleinbild in Tabelle schreiben
    $sql = "INSERT INTO upload_pic (upload_pic_id, pic_size, pic_small_size, pic_name) VALUES ('$upload_id', '$pic_size','$pic_small_size', '$pic')";
    $result = mysql_query($sql,$db);

    // Ergebnisanzeige
    $verbindung = mysql_pconnect($host, $user, $password);
    if($verbindung)
    {

    if(mysql_select_db($dbase, $verbindung))
    $sql ="SELECT * FROM berichte WHERE id = $upload_id";
    $ergebnis = mysql_query($sql,$verbindung);
    if($ergebnis)
    if (mysql_num_rows($ergebnis) == 0)
    {
    echo "<body>Eintrag fehlgeschlagen...";

    }
    else
    {

    while($zeile = mysql_fetch_object($ergebnis))

    {
    echo "<body>";
    echo "<center><table border=1 cellpadding='4'>";
    echo "<tr><td>Hier Ihr Eintrag:<br><br><img src='".$upload_pfad . Grossbild($pic)."' border='0' align='left' vspace='10' hspace='20'><br><font size='-1'>[Hinweis: Sehen sie eine schwarze Fl&auml;che oder den Platzhalter,<br> war das Ausgangsbild kein verarbeitbares Bildformat!]</font><br><br>";
    echo "<br><b>".$zeile->header."</b><br>";
    echo "<br>".$zeile->content."<br>";
    echo "<br>".$zeile->name."<br>";
    echo "<br>".$zeile->telefon."</td></tr></table>";

    }


    mysql_free_result($ergebnis);

    }}
    //ende Ergebnis



    } // end bild abgeschickt
    } // foreach end
    mysql_close($db);
    } // abdiepost end
    ?>
    <br><br>
    <a href="javascript:self.close()">Fenster schließen</a>
    </body>
    </html>[/PHP]


    Test: www.stickwalking.de/neu

    unter Berichte -> Bericht schreiben (wird nicht auf Berichtseite angezeigt; erst nach freigabe....
    Wer hat eine Idee ?

    Dank schon im vorraus

  • #2
    @copy ($G_bild, $upload_pfad.$bildname);
    $pic_size=filesize($upload_pfad.$bildname);

    wie wär's wenn du das @ rausnimmst?
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      warum postest du hier den ganzen Code?


      No such file or directory
      haste mal versucht das zu übersetzen?
      mfg
      marc75

      <Platz für anderes>

      Kommentar


      • #4
        Original geschrieben von mrhappiness

        wie wär's wenn du das @ rausnimmst?
        OffTopic:
        anstatt zu fragen, kannst du eigentlich deine Sig. einfach groß posten


        @hinni, bitte lesen: http://www.php-resource.de/forum/sho...threadid=47906

        Kommentar


        • #5
          ....mmmh

          also, <u>solch einen</u> Ordner gibt es
          wenn ich das @ entferne dreht das Script völlig durch...

          Ich habe aber das Script auf anderen (2) Servern getestet, dort geht es.

          Was kann ich noch tun ??

          Kommentar


          • #6
            das posten was passiert wenn du das @ rausnimmst?
            Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
            var_dump(), print_r(), debug_backtrace und echo.
            Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
            Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
            Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

            Kommentar


            • #7
              Re: ....mmmh

              Original geschrieben von hinni

              wenn ich das @ entferne dreht das Script völlig durch...
              das ist fast zu erwarten aber wenn du darüber schweigst, wie die Fehlermeldungen lauten, dann kann keiner dir helfen.

              Kommentar


              • #8
                ... die Meldungen

                Habe nur die @ vor copy entfernt.


                Warning: copy(): open_basedir restriction in effect. File(/tmp/phpIdDnhb) is not within the allowed path(s): (.:/httpd/stickwalking.de) in /httpd/stickwalking.de/data/neu/berichte/bericht_upload_save.php on line 74

                Warning: filesize(): Stat failed for httpd/stickwalking.de/data/neu/upload_pic/20041208175238_130089_small.jpg (errno=2 - No such file or directory) in /httpd/stickwalking.de/data/neu/berichte/bericht_upload_save.php on line 84

                Warning: copy(): open_basedir restriction in effect. File(/tmp/phpIdDnhb) is not within the allowed path(s): (.:/httpd/stickwalking.de) in /httpd/stickwalking.de/data/neu/berichte/bericht_upload_save.php on line 118

                Warning: filesize(): Stat failed for httpd/stickwalking.de/data/neu/upload_pic/20041208175238_130089.jpg (errno=2 - No such file or directory) in /httpd/stickwalking.de/data/neu/berichte/bericht_upload_save.php on line 128

                Kommentar


                • #9
                  na dann such mal nach "open_basedir restriction in effect" das ist nichts neues

                  Kommentar


                  • #10
                    ..so

                    hab da mal in die php.ini gesehen


                    also, wie gesagt safe_mode=off

                    include_path .:/usr/share/php sollta da doch kein Problem sein? oder

                    open_basedir no value

                    chmod=777 für die entsprechenden Ordner/Dateien

                    Kommentar


                    • #11
                      .. fast gelöst

                      nehme statt copy --> move_uploaded_file

                      geht, aber nun berechnet er die Größen nicht mehr.
                      Na, muß ich bestimmt das script ändern-hat da jemand einen Tipp?


                      Ansonsten erst mal Danke für die Denkanstöße...

                      Kommentar

                      Lädt...
                      X