Problem PHP bilder ab gewisser grösse= anzeigefehler

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

  • Problem PHP bilder ab gewisser grösse= anzeigefehler

    hey, ich habe leider noch nicht wirklich ahnung von php um mit diesem problem klar zu kommen und wollte fragen warum in beispiel 1
    http://viva2000.com/gallery2/2006_06...i/img_0000.php
    das bild einwandfrei ist - die qualitäten lassen sich auch prima ändern
    !aber! sobald ich die grösse des bildes grösser als die variable 500 in pixel haben möchte,
    das bild nicht angezeigt wird so in beispiel 2
    http://viva2000.com/gallery2/2006_06...i/img_0001.php
    und in 3
    http://viva2000.com/gallery2/2006_06...i/img_0002.php

    scripte dazu:

    die von beispiel 1- damit rufe ich das bild auf (500px) und es funzt
    PHP-Code:
    <img id="pic_detail" src="show.php?size=500&id=2006_06_20_Ostrow_Yamakeshi_001.jpg" border="0" /> 
    dieser script verarbeitet das ganze
    PHP-Code:

    <?
    $bild = imagecreatefromjpeg($id);
    header("Content-type: image/jpeg");

    $breite_org = imagesx($bild);
    $hoehe_org = imagesy($bild);

    if($breite_org<$hoehe_org){
     $breite_neu = $size;
     $hoehe_neu = $breite_neu * $hoehe_org / $breite_org; 
    }
    else{
     $hoehe_neu = $size;
     $breite_neu = $hoehe_neu * $breite_org / $hoehe_org;
    }
    session_start();
    if (!isset($_SESSION['$quality'])) {
    $_SESSION['$quality'] = '20';}
    $qualli = $_SESSION['$quality'];

    $miniatur = imagecreatetruecolor($breite_neu, $hoehe_neu); 
    ImageCopyResampled($miniatur, $bild, 0, 0, 0, 0, $breite_neu, $hoehe_neu, $breite_org, $hoehe_org);
    imageJpeg($miniatur, null, $qualli);
    ImageDestroy($miniatur);
    ?>
    so und damit rufe ich das bild auf (zB 800px) und es funzt nicht
    PHP-Code:
    <img id="pic_detail" src="show.php?size=800&id=2006_06_20_Ostrow_Yamakeshi_002.jpg" border="0" /> 

    würde mich über hilfe freuen, weil dann könnte ich edlich die gallery weiter scripten und verbessern.

    mfg MINORITYmaN

  • #2
    und eines ist mir noch aufgefallen

    und eines ist mir noch aufgefallen

    die bild eigenschaften des ersten bildes mit (size 500)
    PHP-Code:
    <img id="pic_detail" src="show.php?size=500&id=2006_06_20_Ostrow_Yamakeshi_001.jpg" border="0" /> 
    grösse in ausgabe 666x500 pixel


    jedoch in der hier (size 800)
    PHP-Code:
    <img id="pic_detail" src="show.php?size=800&id=2006_06_20_Ostrow_Yamakeshi_002.jpg" border="0" /> 
    grösse in (placeholder)ausgabe 600x450 pixel


    hat das einen zusammenhang?

    mfg MINORITYmaN

    Kommentar


    • #3
      Setze header() erst direkt vor imagejpeg(), dreh das error_reporting richtig auf und dann rufe mal http://viva2000.com/gallery2/2006_06...akeshi_002.jpg auf. Ich wette, du stößt ans memory_limit.

      Kommentar


      • #4
        Original geschrieben von onemorenerd
        dreh das error_reporting richtig auf
        hmm das verstehe ich leider nicht header ist jetzt so
        PHP-Code:
        <?
        header("Content-type: image/jpeg");
        $bild = imagecreatefromjpeg($id);

        $breite_org = imagesx($bild);
        $hoehe_org = imagesy($bild);

        if($breite_org<$hoehe_org){
         $breite_neu = $size;
         $hoehe_neu = $breite_neu * $hoehe_org / $breite_org; 
        }
        else{
         $hoehe_neu = $size;
         $breite_neu = $hoehe_neu * $breite_org / $hoehe_org;
        }


        /*if($quality == null){
         $quality = '65';
        }
        else{
        $quality = '100';
        }*/
        session_start();
        if (!isset($_SESSION['$quality'])) {
        $_SESSION['$quality'] = '20';}
        $qualli = $_SESSION['$quality'];

        $miniatur = imagecreatetruecolor($breite_neu, $hoehe_neu); 
        ImageCopyResampled($miniatur, $bild, 0, 0, 0, 0, $breite_neu, $hoehe_neu, $breite_org, $hoehe_org);
        imageJpeg($miniatur, null, $qualli);
        ImageDestroy($miniatur);

        ?>

        Kommentar


        • #5
          Ich sagte vor imagejpeg(), nicht imagecreatefromjpeg().
          Der Effekt: Wenn du bis zuletzt keinen Content-Type setzt und eine Fehlermeldung kommt, dann kannst du sie auch lesen, weil dein Browser sie nicht als Bild interpretiert.

          http://php.net/error_reporting

          Kommentar


          • #6
            hmmmm

            habe sogar error_reporting(E_ALL); eingefügt aber der zeigt nix an, ausser ein paar andere fehler siehe link aber diese kan ich nicht lösen da ich diese noch nicht in irgend einer hilfe gefunden hab.
            http://viva2000.com/gallery2/2006_06...i/img_0001.php

            also anscheinend ist limit bei variable 569 pixel, ich denke mal wie es gesagt wurde ist wohl etwas zu viel vom original,welches ca 500kb hat , wenn ich bilder mit schlechter qualli rein pack die ca 900 pix breit sind und ich sie vergrösser oder verkleiner funzt das. also ich versuche noch etwas zu tüfteln und andere scripts nach lösungen durchzuforsten.

            hmm wie würdet ihr einen script schreiben der per session quallität, und grösse verändern kann eventuell noch nen watermark mit einbindet( kann aber auch ohne sein, bekomme ich schon mit ein paar tagen herum testen selber hin )

            mfg MINORITYmaN

            ps: und danke für die schnellen antworten, weil zeit ist gerade bei mir etwas knapp-leider-

            Kommentar


            • #7
              Re: hmmmm

              Original geschrieben von MINORITYmaN
              habe sogar error_reporting(E_ALL); eingefügt aber der zeigt nix an
              Dann kann er dich wohl nicht leiden.
              Mir zeigt er
              Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 4264 bytes) in /home/users/viva2000/public_html/technix/resize.php on line 28
              Damit ist das Problem auch klar und die Lösung wäre, das memory_limit an die maximal zulässige Bildgröße anzupassen bzw. umgekehrt.

              Kommentar


              • #8
                @Threadstarter: Wäre klug, wenn du die Fehlermeldungen nicht verlinkst, sondern hier postest. So ist das ganze nur schwer nachzuvollziehen, da du ja ständig weiterentwickelst.

                Desweiteren habe ich noch keine Fehlermeldung auf deiner Seite gesehen, die man nicht hier im Forum findest. Wie gesagt: Das macht die sache nicht nachvollziehbar.

                Kommentar


                • #9
                  hmm kann man damit was anfagen

                  php info habe ich mir angesehen, ist dieses memory limit soetwas wie
                  ein temp cache, oder ist das der verarbeitungsspeicher der zur verfügung steht,
                  um das zu vergrössern muss ich ja php.ini editieren, leider finde ich diese nicht, habe mit fxp server durchsucht.ich denke mal dieses ist für user hidden

                  memory limit


                  und leider konnte ich die memory fehler meldung nicht lesen nur diese hier


                  und dieser kommt deswegen
                  PHP-Code:
                  <a href="<? $Datei = $_SERVER[PHP_SELF]; $titel = explode("/",$Datei); $Datei = $titel[count($titel)-2];
                  echo 'http://'.$_SERVER[SERVER_NAME].'/'.'gallery2'.$Datei.'/';?>" target="_blank">
                  <? $Datei = $_SERVER[PHP_SELF]; $titel = explode("/",$Datei); $Datei = $titel[count($titel)-2];
                  echo 'http://'.$_SERVER[SERVER_NAME].'/'.'gallery2'.$Datei.'/';?>
                  </a>
                  (gibt es auch ne lösung zu dem fehler hier? ich wollte nur den pfad zum ordner wo die bilder drin sind dymamisch eintragen lassen, es funzt, aber bei der reporting kommt halt das raus, wenn es anders geht "andere lösung" würde ich es ändern)

                  also ich kann aus $_SERVER[SERVER_NAME] ja gleich in "viva2000.com" umwandeln, aber das mit dem php self weiss ich net.


                  habe firefox und iexplorer aber beide haben bei mir den memory fehler nicht erkannt ausser das da oben,
                  wie konntest du diese fehler sehen? würde es bei mir auch so
                  einstellen damit ich dich nicht immer nerven muss mit fragen.

                  und danke noch mal das du antwortest =)

                  ich kann mir vorstellen das es lässtig sein kann, aber leider habe ich keine bücher, zeit ist mässig und erfahrung fehlt.

                  naj aaber wen die gallery fertig sein sollte dann lade ich alle herzlich ein zum anschauen

                  Kommentar


                  • #10
                    was die ini angeht, wendest du dich am besten mal an deinen Hoster. Idr. hast du auf shared hostings keine berechtigungen zum ändern.

                    gibt es auch ne lösung zu dem fehler hier?
                    Ja, wie gesagt: Such mal im Forum!

                    also ich kann aus $_SERVER[SERVER_NAME] ja gleich in "viva2000.com" umwandeln, aber das mit dem php self weiss ich net.
                    bringt beides nur bedingt etwas. willst du alles anpassen, wenn du das script irgendwann mal umziehst?



                    habe firefox und iexplorer aber beide haben bei mir den memory fehler nicht erkannt ausser das da oben,
                    Welchen Bowser du verwendest, ist total egal. PHP läuft serverseitig.
                    Guck mal in der Datei nach, in der du das bild erstellst.
                    z.B. http://viva2000.com/gallery2/2006_06...akeshi_002.jpg

                    ich kann mir vorstellen das es lässtig sein kann, aber leider habe ich keine bücher, zeit ist mässig und erfahrung fehlt.
                    OffTopic:
                    und was hat das ganze dann mit programmieren zu tun???

                    Kommentar


                    • #11
                      lol

                      das war auf das fragen bezogen, machen fühlen sich genervt vom ewigem gefragt werden. ;P

                      Kommentar


                      • #12
                        OffTopic:
                        wollte eher andeuten, dass das (keine bücher, zeit, erfahrung) keine wirklichen voraussetzungen fürs programmieren ist.

                        Kommentar


                        • #13
                          wir wärs damit

                          ich habe das prob gelöst mit

                          php_value memory_limit 20M

                          in der .htaccess

                          thx @ all die mir genatwortet haben

                          hoffe die gallerie kann jetzt fertig werden

                          cya @ all

                          Kommentar

                          Lädt...
                          X