Popup Grösse an Bild dynamisch anpassen

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

  • Popup Grösse an Bild dynamisch anpassen

    Hallo,

    ich habe diesmal noch nicht direkt ein Problem, sondern eine Frage.
    Ich lese mit einem PHP Bilder aus der DB aus.
    Nun möchte ich dieses in einem PopUp anzeigen lassen, das die entsprechende Grösse des Bildes hat.
    Der Befehlt getimagesize() funktioniert offenbar nicht.
    Wie kann ich dieses lösen?

    Helmi

  • #2
    Helas,

    also ich habe das Problem mal so gelöst:

    PHP-Code:
    <?PHP $info getimagesize($bild?>

    <script language="JavaScript" type="text/JavaScript">
    function fullscreen () 
    {
      window.resizeTo (<?php echo $info[0];?>,<?php echo $info[1];?>);
      window.moveTo (10,10);
      self.focus();
    }
    </script>
    <body onLoad="fullscreen()">
    zu sehen hier:

    Das Problem ist eher die VAR $bild. Die muß du genau nach Serverpfad definieren. Dann funzt es.

    Hoffe das hilft dir....
    Zuletzt geändert von ; 26.11.2003, 12:01.

    Kommentar


    • #3
      ausserdem solltest du auf $info[y] 24px addieren, sonst fehlt was
      Kissolino.com

      Kommentar


      • #4
        Hi,

        leider hilft mir das gar nicht. Den Javascript Code für ein neues PopUp hätte ich auch, aber der basiert ebenfalls auf getimagesize($meinbild).
        Und das getimagesize kann sich offenbar die grösse nicht aus dem php lesen... warum verstehe ich nicht.
        Vielleicht hilft der Quelltext meines php-Script-Bildes:

        PHP-Code:
            $query "select bild,filetype from hotels_bilder where nr=".$nr;
            
        $result = @MYSQL_QUERY($query);

            
        $data = @MYSQL_RESULT($result,0,"bild");
            
        $type = @MYSQL_RESULT($result,0,"filetype");

            
        Header"Content-type: $type");
            echo 
        $data

        Kommentar


        • #5
          Mich würde mal dein Popupscript interessieren.

          Wie schon gesagt, getimagesize($meinbild) verlangt den Serverpfad zum bild. Nicht den relativen oder http pfad.


          @Wurzel:
          könnte man ja so realisieren:
          Code:
          window.resizeTo (<?php echo $info[0]+24;?>,<?php echo $info[1]+24;?> );

          Kommentar


          • #6
            PHP-Code:
            $src imagecreatefromstring ($data);
               
            $width imagesx($src);
               
            $height imagesy($src); 
            versuchs mal damit.
            Kissolino.com

            Kommentar


            • #7
              @Peacie
              NUR für die höhe ! => info[1]+24

              die 24px gleichen den kopfbalken (wie heisst das teil noch gleich)
              aus und sind ein näherungswert (ie/opera/ns/mozilla).
              Kissolino.com

              Kommentar


              • #8
                @wurzel
                Danke für den Tipp, das wußte ich net

                Kommentar


                • #9
                  @Wurzel:

                  Also ich muss jetzt mal ganz blöd fragen.
                  Wo soll ich den Teil einfügen? In das Bild Script? In das Popup?
                  Wenn ich es in das Bildscript einfüge, wie bekomme ich dann die var height und width übergeben?
                  Wenn ich es ins popup einfüge, wie bekomme ich dann das $data aus meinem bild_script.php wieder raus?

                  Kommentar


                  • #10
                    du musst deine query 2x laufen lassen

                    1x im script, dass im popup aufgerufen wird
                    - hier bestimmst du x- / y-size => imagecreatefromstring()
                    PHP-Code:
                    // db-connect
                    $query "select bild,filetype from hotels_bilder where nr=".$_GET['nr'];
                    $result = @MYSQL_QUERY($query);
                    $data = @MYSQL_RESULT($result,0,"bild");
                    $src imagecreatefromstring ($data);
                    $width imagesx($src);
                    $height imagesy($src);
                    imagedestroy($src);

                    // x & y sind bekannt
                    echo "head, dein_javascript, whatever";
                    echo 
                    "<body onload=\"fullscreen(".$width .",".$height.")\">";
                    echo 
                    "<img src=\"bild.php?nr=".$_GET['nr']."\"></body></html>";
                    ... 
                    die bild_php lässt du wie gehabt
                    Kissolino.com

                    Kommentar


                    • #11
                      Ja, danke, das geht jetzt.
                      ist auch irgendwie logisch was Du geschrieben hast... manchmal liegt die Lösung eben viel näher ....


                      Helmi

                      Kommentar

                      Lädt...
                      X