Bilder aus DB..die 100ste Frage

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

  • Bilder aus DB..die 100ste Frage

    Hallo,

    sorry, ich weiss wieder eine Bilder Frage.
    Aber irgendwie check ich heute nix mehr...
    ...ich will alle Bilder die ich in der DB habe, in einer Tabelle ausgeben.



    nun, die Anzeige 1 Bildes funktioniert -> immerhin gibts genug Beiträge, dass htm und php getrennt sein muss.

    Aber wie mach ich das, dass ALLE BILDER angezeigt werden - in einer Schleife, ok...aber ich kann heut nicht mehr denken...

    show_pic.php
    PHP-Code:
    <?
    include ("config.php");
    $connection=mysql_connect($dbserver,$dbuser,$dbpass) or die ("Die Verbindung zum MySQL-Datenbankserver ist fehlgeschlagen");
    mysql_select_db($db) or die ("Die benötigte Datenbank konnte nicht gefunden werden");

    $sql = "select * from pic";
    $qry = mysql_query($sql);
    $result = mysql_fetch_array($qry);
    while ($result)
    {
          header('Content-Type: image/jpeg');
          echo $Bild = $result['pic'];
    }
    ?>
    und nun in der html seite
    PHP-Code:
    <table width=100height="300" border=5 cellpadding=0 cellspacing=0">
    <tr><td>
                   # hier sollen Alle Bilder angezeigt werden
            <img src="
    show_pic.php???????????">
    </td></tr> 
    aber das kommt doch in ne Schleife???

    Sorry für die dumme Frage...

    Danke für Eure Hilfe...
    Zuletzt geändert von petzi74; 16.05.2005, 19:42.

  • #2
    editiere erstmal dein post: http://www.php-resource.de/forum/sho...threadid=50454

    und dann schaust du dir ein paar gute infoquellen an, die mehr als ausführlich erklären, wie man so etwas macht:
    www.php.net (!)
    www.schattenbaum.net
    www.php-faq.de
    http://tut.php-q.net

    Kommentar


    • #3
      ich hab schon den ganzen Tag gegoogelt, aber es funktioniert nicht so wie's soll bzw. ich steh ganz einfach aufn Schlauch heute.

      aber trotzdem DANKE!!

      Kommentar


      • #4
        HI,
        wer genau sagt denn, dass php und html getrennt sein muss??
        Klar wenn du mit Templates arbeitest ist das so.
        Es geht aber auch anders. Hast du deine Bilder in der DB?? Oder die Pfade zu deinen Bildern??
        Wenn du die Pfade in der DB hast gehts auf jeden Fall so:
        PHP-Code:
        <?
        include ("config.php");
        $connection=mysql_connect($dbserver,$dbuser,$dbpass) or die ("Die Verbindung zum MySQL-Datenbankserver ist fehlgeschlagen");
        mysql_select_db($db) or die ("Die benötigte Datenbank konnte nicht gefunden werden");

        $sql = "select * from pic";
        $qry = mysql_query($sql);
        $result = mysql_fetch_array($qry); ?>

        <table width=100% height="300" border=5 cellpadding=0 cellspacing=0">
        <tr>
        <?
        while ($result)
        { ?>
            <td><img src= <? echo $result['pfad']; ?> </td>
        <?
        }
        ?>
        </tr>

        Kommentar


        • #5
          @kakktus: Im Script sieht man, das die Bilder direkt aus der DB kommen.

          Daher solltest du zuerst herausfinden, wie viele Bilder in der DB sind, und dann eine Schleife dementsprechend oft durchlaufen lassen, also z.B. so (Pseudocode):
          PHP-Code:
          while ($id <= $anzahl_bilder)
          {
          echo 
          "<img src=\"show_pic.php?id=".$id."\">";
          $id++;

          Irgendsowas müsste klappen. Bin mir jetzt nicht sicher, ob alle Anführungszeichen richtig sind, und auch richtig escaped, einfach mal durchzählen...

          BTW: Du musst nicht HTML und PHP grundsätzlich trennen, die Ausgabe von Bildern durch ein PHP-Script darf nur keine weiteren Ausgaben enthalten.
          In deinem Beispiel ist die show_pic.php also nur zum Senden der Bilder da!

          Kommentar


          • #6
            du hast die bilder in nem blob in der db gespeichert ?
            hast du auch ne spalte mit ner id dafür ?

            Code:
            select pic from pic where id = $_GET['id']
            "html_seite":
            Code:
            select id from pic
            while $pic = mysql_fetch_assoc()
              echo <img src="show_pic.php?$pic['id']">
            achtung: peudocode
            ausserdem hast du paar fehler:
            - warum brauchst du in deiner php seite ne schleife ? du kannst nur ein bild auf einmal anzeigen, das du direkt mit der id ansprichst
            mfg,
            [color=#0080c0]Coragon[/color]

            Kommentar


            • #7
              @Heini81: Stimmt hast recht :-)
              Mein Script sollte ja auch nur eine Alternative sein :-)

              Kommentar


              • #8
                @kakktus: ich würde die Bilder auch nie direkt in der DB speichern, finde deinen Ansatz daher auch besser... ;-)

                Kommentar


                • #9
                  Danke für Eure Hilfe - es funzt nun.

                  Naja, ich muss für jemanden die Site machen und die wollen ALLES selbst administrieren, aktualisieren etc...deswegen die Idee mit der DB. Es sind ohnedies nur etwa max. 30 Bilder - und das ist noch kein Performance Problem - soweit ich die einzelnen Artikeln gelesen habe.
                  Vor - Nachteile Bilder speichern in DB.


                  Danke für Eure Hilfe & einen schönen Abend noch.

                  Kommentar

                  Lädt...
                  X