problem mit thumb anzeige ...

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

  • problem mit thumb anzeige ...

    Hi !

    Ich habe nun schon seit längerem ein Problem mit meinem Thumbnail script ... und zwar - das wenn ich das entsprechende bild aufrufe - irgendwie das bild neu geladen wird - nur weiss ich jetzt nicht ob es am cache liegt - oder an was anderem .. und ... da ich leider gerade n bisl unter zeutdruck stehe (und in diesem bereich 0 ahnung habe) ... wärs echt nice von euch wenn ihr euch das mal anschauen koenntet und mir sagen koenntet - wieso das bild denn jetzt genau immer neu geladen wird - und wie ich das evtl ausbessern kann --- VIELEN DANK !


    thumb.php :

    PHP-Code:
    <?php

    $bild 
    $_GET["bild"];

    $size $_GET["size"];

    //keine externen Dateien einbinden
    $bild str_replace("://","",$bild);

    $filename $bild;

    //maximale größe des ausgabefeldes

    if(!empty($size))
    {

    $size explode('x',$size);

    $width $size["0"];
    $height $size["1"];

    }
    else
    {

    $width 100;
    $height 100;

    }

    //Neue Größe ..
    list($width_orig$height_orig) = getimagesize($filename);

    if (
    $width && ($width_orig $height_orig)) {
       
    $width = ($height $height_orig) * $width_orig;
    } else {
       
    $height = ($width $width_orig) * $height_orig;
    }

    //Neues Bild ..
    $image_p imagecreatetruecolor($width$height);

    //schauen ob jpeg, jpg oder gif - wegen MIME probelme - über substr ...
    if( substr(strrchr($bild"."), 1) == 'jpg' || substr(strrchr($bild"."), 1) == 'jpeg')
    {
    $image imagecreatefromjpeg($filename);
    }
    elseif( 
    substr(strrchr($bild"."), 1) == 'gif' )
    {
    $image imagecreatefromgif($filename);
    }

    imagecopyresampled($image_p$image0000$width$height$width_orig$height_orig);

    //der header ist an die Ausgabe angepasst
    header("content-type: image/jpeg");

    //Ausgabe als jpeg Bild
    imagejpeg($image_pnull100);

    ?>
    aufgerufen wird das dann ugf so :

    PHP-Code:
    <?php echo "<img src=\"thumb.php?bild=bla.jpg\">"?>
    oder so :

    PHP-Code:
    <?php echo "<img src=\"thumb.php?bild=bla.jpg&size=50x50\">"?>
    EDIT:

    oder natürlich auch so :

    <img src="thumb.php?bild=bla.jpg">




    - falls ihr sonst noch irgendwas merkwürdiges entdeckt - bitte sagts mir - thx !


    greetz subabrain
    Zuletzt geändert von subabrain; 10.03.2006, 09:26.

  • #2
    1. Wie eilig du es hast oder wie viel zeit du damit zubringen willst, interessiert hier nicht. Fakt ist, dass du dich reinhängen musst, wenn du Probleme lösen willst, egal wie gut du dich auskennst.

    Sehe ich das richtig, dass du das bild immer wieder on the fly neu generierst. Da ist der vorteil der kürzeren ladezeit natürlich fast wieder weg.

    und was genau ist jetzt dein problem? bei jedem aufruf wird das bild natürlich neu zum klient geladen, außer der hat es noch im cache. aber das ist nicht wirklich dein prob.

    Kommentar


    • #3
      hallo,

      ja das ist mir klar das es keinen interessiert

      aber wenn ich es nicht schreiben würde - dann hättest möglicherweise nichtmal du geantwortet - wofür ich dir dankbar bin ^^

      also nochmal zu meinem problem ... im prinzip - wie du bereits sagtest..

      ich würde es gerne länger cachen -> da es jedesmal sonst neu geladen wird - und daher frage ich mich wie man anhand dieses scripts es so verändern kann das es nur bedingt neu läd ... aber wie ich mir selbst gedacht habe - wird das wohl nicht so einfach gehen ...

      da es ja jedesmal neu ausgeführt wird -- aber da ich halt wie gesagt nicht allzuviel ahnung habe was genau bei der ausgabe eines bildes bezüglich cache usw. passiert wollte ich hier fragen ...

      wenn es nicht möglich ist - ist es auch egal


      gruß - subabrain

      Kommentar


      • #4
        aber wenn ich es nicht schreiben würde - dann hättest möglicherweise nichtmal du geantwortet
        wahrscheinlich schon, aber dann hätte ich dich nicht zurechtweisen müssen.

        ich würde es gerne länger cachen -> da es jedesmal sonst neu geladen wird - und daher frage ich mich wie man anhand dieses scripts es so verändern kann das es nur bedingt neu läd ... aber wie ich mir selbst gedacht habe - wird das wohl nicht so einfach gehen ...
        es geht total einfach. anstatt dass du jedes mal das bild generierst, generierst du es nur einmal und speicherst es dann im filesystem ab. gut ist.

        Kommentar


        • #5
          hi ... ja mit diesem gedanken habe ich auch schon gespielt -- die frage wäre hier nur - ist es besser mehr traffic zu verbrauchen oder mehr speicherplatz ? - wohl keines von beidem (aber entscheiden muss man sich ^^)

          naja .. muss man dann wohl abwägen ... thx aufjedenfall mal !


          greetz subabrain

          Kommentar


          • #6
            Wie kommst du auf mehr Traffic??? Der ist bei beiden gleich! Und der Speicherplatz eines Thumbnails kann wohl (entgegen der Dateigröße der originalbilder) vernachlässigt werden.

            Die Serverlast zu reduzieren heißt es!

            Kommentar


            • #7
              ... ja ... also sry - wenn ich da was falsch verstanden habe ..
              aber ich dachte - wenn ich ein bild im cache speichere und es da dann immer wieder raushole ...

              - dann ist wohl auch der traffic kleiner als wenn ich es jedes mal durch ein php script jage - oder nicht ?

              - dadurch aber wird ja mehr speicherplatz verbraucht - den kann man bei einigen wenigen thumbs vll. vernachlässigen - aber nicht bei vielen - oder ist dem nicht so ?

              danke für antworten ...

              Kommentar


              • #8
                aber ich dachte - wenn ich ein bild im cache speichere und es da dann immer wieder raushole ...
                von welchem cache sprichst du? (ich traue dir gerade alles zu )

                - dann ist wohl auch der traffic kleiner als wenn ich es jedes mal durch ein php script jage - oder nicht ?
                der traffk ist jedes mal gleich groß, weil du jedes mal das bild an den browser senden musst. da ist ganz egal, woher es kommt.

                - dadurch aber wird ja mehr speicherplatz verbraucht - den kann man bei einigen wenigen thumbs vll. vernachlässigen - aber nicht bei vielen - oder ist dem nicht so ?
                jedes thumb setzt wohl auch ein großes bild voraus. also kannst du das thumb so ziemlich vernachlässigen. wenn du anderer meinung bis, dann musst du jedes mal neu generieren. was auf die performance drückt. und lass dir gesagt sein, festplattenspeicher ist billiger als ram und cpu. Noch Fragen?

                Kommentar


                • #9
                  ok ..

                  ok .. ich denke ich verstehe nun was du meinst ...

                  danke für deine hilfe !


                  gruß subabrain !

                  Kommentar

                  Lädt...
                  X