kostenloser Webspace werbefrei: lima-city


Daten aus DB ausgeben

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    Hallo !

    Ich habe mir ein System erstellt, mit dem ich neue Rezepte im Adminbereich eintragen und die werden dann mit Bild auf der Seite angezeigt.

    Zum Testen: http://davidlohmann.de/rezepte/backrezepte/index.php

    Jetzt meine Frage: Kann ich auch die Rezepte nebeneinander anzeigen lassen, also z.B. 2 nebeneinander?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Mach doch eine unsichtbare Tabelle, dann lässt du bei jedem 2. Durchlauf der Schleife eine neue Zeile erstellen. Oder mache es ohne Tabelle, und füge bei jedem 2. Durchlauf ein "<br />" ein.




    mfg drafed-map
  4. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    drafed-map schrieb:
    Mach doch eine unsichtbare Tabelle, dann lässt du bei jedem 2. Durchlauf der Schleife eine neue Zeile erstellen. Oder mache es ohne Tabelle, und füge bei jedem 2. Durchlauf ein "<br />" ein.




    mfg drafed-map


    Wie mach ich das?

    Hier mal mein Script:

    <?
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte'");
    while($rows = mysql_fetch_array($result))
    {
        echo "<table border='0' width='40%'>
        <tr>
          <td><img src='".$rows[bild]."' height='50' /></td>
          <td><a href='rezept.php?zept=".$rows['rezeptname']."'>".$rows['rezeptname']."</a></td>
        </tr>
      </table><br>\n";
    }
    ?>
  5. Nehme diesen Code (ungetestet):


    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = true;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile) {
    echo '<tr>';
    $neue_zeile = false;
    } else $neue_zeile = true;
    
    
    echo '<table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows[bild].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table>';
    
    
    
    if($neue_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    if(!$neue_zeile) echo '</tr>';
    echo '</table>';
    
    ?>



    Edit: Ich hab noch eine Kleinigkeit verbessert.



    mfg drafed-map

    Beitrag zuletzt geändert: 30.7.2009 11:59:59 von drafed-map
  6. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    drafed-map schrieb:
    Nehme diesen Code (ungetestet):


    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = true;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile) {
    echo '<tr>';
    $neue_zeile = false;
    } else $neue_zeile = true;
    
    
    echo '<table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows[bild].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table>';
    
    
    
    if($neue_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    if(!$neue_zeile) echo '</tr>';
    echo '</table>';
    
    ?>



    Edit: Ich hab noch eine Kleinigkeit verbessert.



    mfg drafed-map


    Es geht leider noch nicht. Kommt nur eine weiße Seite.

    mfg david

    EDIT: Jetzt kommt die Seite, aber die Rezepte werden nicht richtig angezeigt.

    Beitrag zuletzt geändert: 30.7.2009 12:02:00 von davy
  7. Dann teste diesen Code, wenn der nicht geht, überprüfe bitte, ob die Get-Variabele wirklich "zept", und nicht "rezept" heisen soll, und ob die Datenbanktabellenspalte "bild" wirklich existiert, und gefüllt ist.


    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = true;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile) {
    echo '<tr>';
    $neue_zeile = false;
    } else $neue_zeile = true;
    
    
    echo '<td><table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows['bild'].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table></td>';
    
    
    
    if($neue_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    if(!$neue_zeile) echo '</tr>';
    echo '</table>';
    
    ?>


    Edit: Nochmal was am Code geändert.



    mfg drafed-map

    Beitrag zuletzt geändert: 30.7.2009 12:15:32 von drafed-map
  8. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    drafed-map schrieb:
    Dann teste diesen Code, wenn der nicht geht, überprüfe bitte, ob die Get-Variabele wirklich "zept", und nicht "rezept" heisen soll, und ob die Datenbanktabellenspalte "bild" wirklich existiert, und gefüllt ist.


    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = true;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile) {
    echo '<tr>';
    $neue_zeile = false;
    } else $neue_zeile = true;
    
    
    echo '<td><table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows['bild'].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table></td>';
    
    
    
    if($neue_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    if(!$neue_zeile) echo '</tr>';
    echo '</table>';
    
    ?>


    Edit: Nochmal was am Code geändert.



    mfg drafed-map


    Danke ! Es klappt alles !

    Geht es auch, dass 3 Rezepte nebeneinander sind und der Abstand zwischen 2 Rezepten ein bisschen größer sind?

    mfg david
  9. davy schrieb:
    drafed-map schrieb:
    Dann teste diesen Code, wenn der nicht geht, überprüfe bitte, ob die Get-Variabele wirklich "zept", und nicht "rezept" heisen soll, und ob die Datenbanktabellenspalte "bild" wirklich existiert, und gefüllt ist.


    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = true;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile) {
    echo '<tr>';
    $neue_zeile = false;
    } else $neue_zeile = true;
    
    
    echo '<td><table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows['bild'].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table></td>';
    
    
    
    if($neue_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    if(!$neue_zeile) echo '</tr>';
    echo '</table>';
    
    ?>


    Edit: Nochmal was am Code geändert.



    mfg drafed-map


    Danke ! Es klappt alles !

    Geht es auch, dass 3 Rezepte nebeneinander sind und der Abstand zwischen 2 Rezepten ein bisschen größer sind?

    mfg david



    Ja, das geht. Die Abstände musst du mit Style-Anweisungen in den tr's und td's regelen, das mit den 3 Rezepten nebeneinander ist aber etwas komplizierter als das mit den 2, da man dazu nichtmehr true und false nutzen kann.


    Hier ist der neue Code:

    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = 1;
    $ende_zeile = false;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile==1) {
    echo '<tr>';
    $neue_zeile = 3;
    } else $neue_zeile--;
    
    if($neue_zeile==2) $ende_zeile = true;
    
    
    echo '<td style="width:33%"><table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows['bild'].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table></td>';
    
    
    
    if($ende_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    
    echo '</table>';
    
    ?>


    Leider habe ich etwas den überblick verloren, versuch mal in der Zeile "if($neue_zeile==2) $ende_zeile = true;" die Zahlen 1, 2 und 3 durch.



    mfg drafed-map

    Beitrag zuletzt geändert: 30.7.2009 12:36:04 von drafed-map
  10. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    Jetzt habe ich in der Zeile 1 eingetragen, und in der ersten Reihe auf der Seite sind 3 nebeneinander, aber dann nur noch 1. Wie krieg ich es gleichmäßig hin?
  11. Probiere das mal:


    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = 3;
    $ende_zeile = false;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile==3) {
    echo '<tr>';
    $neue_zeile = 2;
    $ende_zeile = false;
    } else
    if($neue_zeile==2) {
    $neue_zeile = 1;
    $ende_zeile = false;
    } else
    if($neue_zeile==1) {
    $ende_zeile = true;
    $neue_zeile = 3;
    }
    
    
    
    
    echo '<td style="width:33%"><table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows['bild'].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table></td>';
    
    
    
    if($ende_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    
    echo '</table>';
    
    ?>
  12. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    drafed-map schrieb:
    Probiere das mal:


    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = 3;
    $ende_zeile = false;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile==3) {
    echo '<tr>';
    $neue_zeile = 2;
    $ende_zeile = false;
    } else
    if($neue_zeile==2) {
    $neue_zeile = 1;
    $ende_zeile = false;
    } else
    if($neue_zeile==1) {
    $ende_zeile = true;
    $neue_zeile = 3;
    }
    
    
    
    
    echo '<td style="width:33%"><table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows['bild'].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table></td>';
    
    
    
    if($ende_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    
    echo '</table>';
    
    ?>



    Super, das geht :thumb:

    Wie genau krieg ich das mit dem Abstand hin

    Mfg
  13. Hier sit der Code:



    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = 3;
    $ende_zeile = false;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile==3) {
    echo '<tr>';
    $neue_zeile = 2;
    $ende_zeile = false;
    $abstand = true;
    } else
    if($neue_zeile==2) {
    $neue_zeile = 1;
    $ende_zeile = false;
    $abstand = true;
    } else
    if($neue_zeile==1) {
    $ende_zeile = true;
    $neue_zeile = 3;
    $abstand = false;
    }
    
    
    
    
    echo '<td style="width:30%"><table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows['bild'].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table></td>';
    
    
    if($abstand) echo '<td style="width:5%">&nbsp;</td>';
    
    
    if($ende_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    
    echo '</table>';
    
    ?>




    mfg drafed-map
  14. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    drafed-map schrieb:
    Hier sit der Code:



    <?php
    
    echo '<table border="0" width="40%">';
    $neue_zeile = 3;
    $ende_zeile = false;
    
    $result = mysql_query("SELECT * FROM rezepte WHERE kategorie = 'backrezepte';");
    while($rows = mysql_fetch_array($result))
    {
    
    if($neue_zeile==3) {
    echo '<tr>';
    $neue_zeile = 2;
    $ende_zeile = false;
    $abstand = true;
    } else
    if($neue_zeile==2) {
    $neue_zeile = 1;
    $ende_zeile = false;
    $abstand = true;
    } else
    if($neue_zeile==1) {
    $ende_zeile = true;
    $neue_zeile = 3;
    $abstand = false;
    }
    
    
    
    
    echo '<td style="width:30%"><table border="0" width="100%">';
    
    echo '<tr><td><img src="'.$rows['bild'].'" height="50px" /></td>';
    echo '<td><a href="rezept.php?zept='.$rows['rezeptname'].'">'.$rows['rezeptname'].'</a></td></tr></table></td>';
    
    
    if($abstand) echo '<td style="width:5%">&nbsp;</td>';
    
    
    if($ende_zeile) echo '</tr>';
    
    
    } // ende while
    
    
    
    echo '</table>';
    
    ?>




    mfg drafed-map


    Danke für alles !

    mfg david
  15. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!