tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
206
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von metalhead
    metalhead metalhead ist offline Mitglied
    Registriert seit
    Nov 2002
    Beiträge
    12
    Hi leute, ich hab hier ein kleines Problem, bei dem ich nicht weiterkomme.
    Ich frage aus der Datenbank den Namen und die URL ein Bildes ab und will diese in einer Tabelle mit drei Spalten darstellen. D. h. pro Zeile sollen drei Namen und Bilder erscheinen.

    Mein Problem ist nun folgendes ... und zwar werden nicht alle Datensätze abgefragt. Die letzten drei fehlen.

    Vielleicht kann mir da einer weiterhelfen.

    Hier noch der Code:
    PHP-Code:
         <table border="0" width="560" cellpadding="0" cellspacing="0">

          <?php
          
            $tabelle 
    'member';
            
    $gesamt anzahl($tabelle); //Bestimmen der Anzahl der in der DB vorhandenen Datensätze
            
    $zeilengesamt ceil(($gesamt/3));
              
            for(
    $zeile=1$zeile<=$zeilengesamt+1$zeile++){
            
              echo 
    "<tr>";
                    
              
    $offset = ($zeile-1)*3;
          
              
    $query 'SELECT * FROM member ORDER BY name ASC LIMIT '$offset .', 3';
              
    $result mysql_query($query);
              if(!
    $result)
              {
                 die(
    "Die Daten konnten nicht aus der Tabelle ausgelesen werden:<br>" mysql_error());
              }

              
    $anzahl mysql_num_rows($result);
              
              if( (
    $trennwert=$gesamt-$zeile*3)<=3) { $wert=$trennwert; }
              else { 
    $wert=3; }
              
              for(
    $i=1$i<=$wert$i++){
                  
    $ergebnis mysql_fetch_assoc($result);
          
          
    ?>
          
            <td align="center" width="156">
              <font color="Gold"><b><?php echo $ergebnis['name'];?></b></font><br>
              <img src="<?php 
                              
    if($ergebnis['imgurl']=="") { echo 'images/na.jpg'; }
                            else                        { echo 
    $ergebnis['imgurl']; }
                        
    ?>">
            </td>
            
          <?php
                  
    }
                
                echo 
    "</tr>";
              echo 
    "<tr>";
              echo 
    "<td colspan='5'>&nbsp;</td>";
              echo 
    "</tr>";

              }
          
          
    ?>
    Der wichtige Teil ist der hier:
    PHP-Code:
             for($zeile=1$zeile<=$zeilengesamt+1$zeile++){
            
            
    $offset = ($zeile-1)*3;
          
        
    $query 'SELECT * FROM member ORDER BY name ASC LIMIT '$offset .', 3'
    Geändert von metalhead (03.04.06 um 15:14 Uhr)
     

  2. #2
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Es geht auch wesentlich einfacher:
    PHP-Code:
    <?php

        $tabelle 
    'member';
        
    $query '
            SELECT
                    `name`,
                    `imgurl`
              FROM
                    `member`
              ORDER BY
                    `name` ASC
            '
    ;
        
    $result mysql_query($query)
            or die(
    mysql_error());

        
    $i 0$cpr 3;
        echo 
    '<table>';
        while( 
    $row mysql_fetch_assoc($result) ) {
            if( 
    $i $cpr == ) {
                echo 
    '<tr>';
            }
            echo 
    '<td>'.$row['name'].' <img src="'.($row['imgurl']=='' 'images/na.jpg' $row['imgurl']).'"></td>';
            if( 
    $i $cpr == $cpr ) {
                echo 
    '</tr>';
            }
            
    $i++;
        }
        echo 
    '</table>';

    ?>
    Alternativ empfehle ich dir die einzelnen Elemente als Liste auszuzeichnen und anschließend mit CSS zu formatieren.
     
    Markus Wulftange

  3. #3
    Registriert seit
    Mar 2005
    Ort
    Bühl/Baden
    Beiträge
    2.330
    In deinem Code gibt es einen kleinen Fehler. Wo wird $i erhöht?
    Geändert von fanste (03.04.06 um 15:47 Uhr)
     
    Gruß fanste

    Benutze bitte immer die passende Highlight-Tags.(z.B: für PHP [php] [/php] Allgemein: [highlight=SCRIPTSPRACHE]Code[/highlight] )

    Problem gelöst? Dann markiere das Thema bitte als erledigt!
    Beachte bitte die Netiquette. Insbesondere Punkt 15.

  4. #4
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Zitat Zitat von fanste
    In deinem Code gibt es einen kleinen Fehler. Wo wird $i erhöht?
    Danke, Fanste, ist korrigiert.
     
    Markus Wulftange

  5. #5
    Registriert seit
    Mar 2005
    Ort
    Bühl/Baden
    Beiträge
    2.330
    Keine Ursache.
     
    Gruß fanste

    Benutze bitte immer die passende Highlight-Tags.(z.B: für PHP [php] [/php] Allgemein: [highlight=SCRIPTSPRACHE]Code[/highlight] )

    Problem gelöst? Dann markiere das Thema bitte als erledigt!
    Beachte bitte die Netiquette. Insbesondere Punkt 15.

  6. #6
    Avatar von metalhead
    metalhead metalhead ist offline Mitglied
    Registriert seit
    Nov 2002
    Beiträge
    12
    danke danke und nochmals danke! ihr seid die besten

    hier is das ergebnis: KLICK MICH
     

Ähnliche Themen

  1. Automatisierter Serienbrief - Word 2007
    Von Christianx21x im Forum .NET Datenverwaltung
    Antworten: 3
    Letzter Beitrag: 28.11.10, 13:51
  2. Automatisierter Abgleich von Outlook-Kontakten mit Datenbank
    Von Hawkings im Forum .NET Application und Service Design
    Antworten: 1
    Letzter Beitrag: 03.09.09, 17:54
  3. Automatisierter Transfer zwischen 2 Servern
    Von gremmlin im Forum Coders Talk
    Antworten: 3
    Letzter Beitrag: 04.08.08, 17:02
  4. Antworten: 6
    Letzter Beitrag: 11.09.04, 16:38
  5. Automatisierter CSV-Import in MS SQL DB
    Von Semmerl im Forum Relationale Datenbanksysteme
    Antworten: 0
    Letzter Beitrag: 12.07.04, 11:09