abfrageproblem php - mysql

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

  • abfrageproblem php - mysql

    hallo zusammen

    ich habe folgendes problem:
    ich habe eine tabelle mit drei spalten (diverses I, diverses II, diverses III).
    in mysql habe ich x datensätze, die nun in die zellen eingefügt werden sollen.
    das funktioniert auch soweit, aber nur zeilenweise und nicht
    zellenweise. das heist, beispiel 1 steht in jeder zelle der spalte 1,
    beispiel 2 in jeder zelle der spalte 2 usw.
    wie man es schon vermutet, bin ich ein absoluter anfänger. mein
    ziel währe eigentlich, dass in jede zelle eine datensatz erscheint.

    hier noch meine code:

    <?
    include("filme.inc.php");
    ?>

    <html>
    <head>
    <title>Filmliste</title>
    <style type="text/css">
    <!--
    .Stil2 {
    font-size: 16px;
    font-weight: bold;
    }
    -->
    </style>
    </head>
    <body>
    <?
    $res=dbquery("select * from videoverwaltung");
    echo mysql_error();
    echo "<table border='1'>";
    echo "<tr>";
    echo "<td bgcolor='#DDEAF4'><strong>&nbsp;&nbsp;&nbsp;<span class='fontmenu2'>Diverses</span> <span class='fontmenu2'> I</span></strong></td>";
    echo "<td bgcolor='#DDEAF4'><strong>&nbsp;&nbsp;&nbsp;<span class='fontmenu2'>Diverses</span> <span class='fontmenu2'> II</span></strong></td>";
    echo "<td bgcolor='#DDEAF4'><strong>&nbsp;&nbsp;&nbsp;<span class='fontmenu2'>Diverses</span> <span class='fontmenu2'> III</span></strong></td>";
    echo "</tr>";
    echo "<tr>";
    while ($dsatz=mysql_fetch_array($res)) {
    echo "<td>".$dsatz['id']."<br>".$dsatz['name']."<br>".$dsatz['titel']."<br>".$dsatz['medium']."<br>".$dsatz['anzahl']."</td>";
    echo "<td>".$dsatz['id']."<br>".$dsatz['name']."<br>".$dsatz['titel']."<br>".$dsatz['medium']."<br>".$dsatz['anzahl']."</td>";
    echo "<td>".$dsatz['id']."<br>".$dsatz['name']."<br>".$dsatz['titel']."<br>".$dsatz['medium']."<br>".$dsatz['anzahl']."</td>";
    echo "</tr>";
    }
    echo "</table>";
    ?>
    </body>
    </html>

    ich danke für eure hilfe.

    gruss
    michael

  • #2
    hey, willkommen.

    machen wir es mal gemeinsam, dir die lösung zu sagen bringt ja nicht den richtigen effekt.
    also <td> eröffnet dir eine zelle und mit </td> schließt du diese zelle wieder. <br> macht dir einen zeilenumbruch.
    dann gehe jetzt mal bitte diesen teil deines codes durch und gucke mal bitte was da passiert.
    PHP-Code:
    echo "<td>".$dsatz['id']."<br>".$dsatz['name']."<br>".$dsatz['titel']."
         <br>"
    .$dsatz['medium']."<br>".$dsatz['anzahl']."</td>"
    ich geh zum lachen in den keller

    Kommentar


    • #3
      Bitte die PHP-Tags des Forums benutzen!

      PHP-Code:
      echo '<tr>';
      while (
      datensatz aus DB) {
          echo 
      '<td>' datensatz '</td>';
      }
      echo 
      '</tr>'

      Kommentar


      • #4
        @onemorenerd
        alter spielverderber

        @cng
        das war dein fehler. du hast zeilenumbrüche gemacht, anstatt die zelle zu schließen und eine neu zu öffnen.
        die lösung entsprechend deines codes
        PHP-Code:
        echo "<td>".$dsatz['id']."</td><td>".$dsatz['name']."</td><td>".$dsatz['titel']."
             </td><td>"
        .$dsatz['medium']."</td><td>".$dsatz['anzahl']."</td> </tr><tr>"
        ich geh zum lachen in den keller

        Kommentar


        • #5
          ich danke euch für die hilfe

          @KamiKatze - mit table öffne ich eine tabelle, mit tr die zeile. mit td
          öffne ich dann die zelle und schreib dort den titel. mit /td schliesse ich
          die zelle, mit /tr schliesse ich die zeile und mit /table schliesse ich die
          tabelle. br ist ein zeilenumbruch usw..

          bei der abrage füge ich die id ein, mach eine zeilenumbruch, füge dann namen, titel usw immer mit zeilenumbruch ein......

          @ onemorenerd - sorry wegen den forumstags ich sehe, nebst dem
          logischen denken fehlt mir auch noch die phantasie
          so funktioniert es schon viel besser. leider macht der nach drei zellen
          noch keinen umbruch (die datensätze werden alle auf einer zeile
          eingetragen..)

          bis jetzt bin ich aber noch nicht drauf gekommen, wie ich das nun
          anstellen soll. ich versuche es jedenfalls weiter, wäre aber schon dankbar, wenn ich da hilfe bekomme.

          danke und gruss
          michael

          Kommentar


          • #6
            bin wohl zu langsam beim schreiben

            KamiKatze - jain

            das resultat ist noch nicht ganz....

            so sollte es dan sein

            PHP-Code:
            <table>
              <
            tr>
                <
            td>titel1</td>
                <
            td>titel2</td>
                <
            td>titel3</td>
              </
            tr>
              <
            tr>
                <
            td>1<br>
                  
            Ferien<br>
                  
            Irendwo<br>
                  
            DVD<br>
                  
            1</td>
                <
            td><p>2<br>
                  
            Geburtstag<br>
                  
            Damian<br
                  
            VCD<br>
                  
            2
                  
            <br>
                </
            p>    </td>
                <
            td>3<br>
                  
            Ferien<br>
                  
            Irgendwo<br>
                  
            SVCD<br>
                  
            1</td>
              </
            tr>
              <
            tr>
                <
            td>4<br>
                  
            Ferien<br>
                  
            irgendo<br>
                  
            SVCD<br>
                  
            2</td>
                <
            td>5<br>
                  
            Raubtierpark<br>
                  
            Subigen<br>
                  
            VCD<br>
                  
            1</td>
                <
            td>6<br>
                  
            Hochzeit<br>
                  
            irgendwelche<br>
                  
            DVD</td>
              </
            tr>
            </
            table

            Kommentar


            • #7
              zeig mal bitte eine spalte aus deiner datenbank. ich komm grad irgendwie mit den inhalten nicht ganz mit. schreib mal bitte ihre indexe mit ran.
              ich geh zum lachen in den keller

              Kommentar


              • #8
                sorry, ich verstehe bahnhof.

                meinst du das hier?
                PHP-Code:
                INSERT INTO `videoverwaltung` ( `id` , `name` , `titel` , `medium` , `anzahl` ) 
                VALUES (
                '''Ferien''Italien 2005''DVD''1'
                ); 

                Kommentar


                • #9
                  ja das reicht, wenn du all deine datensätze so einfügst.
                  PHP-Code:
                  $m=3;
                  while(
                  $dsatz=mysql_fetch_row($res))
                  {  if(
                  $m==3)
                      {  
                  $m=0;
                          echo 
                  "</tr><tr>";
                      }
                      echo 
                  "<td>";
                      for(
                  $n=0;$n<5;$n++)
                        echo 
                  "$dsatz[$n]<br>";
                      echo 
                  "</td>";
                      
                  $m++;

                  probiere das mal bitte aus. ich nutze hier mysql_fetch_row und nicht fetch_array, les dazu mal die hilfe.
                  sollte so eigentlich funktionieren, zwar sicher nicht der optimale code, aber selten.
                  falls du dich wegem $m wunderst. das ist dafür, dass deine tabelle nach drei ausgaben umgebrochen wird. du brauchst den tabellenumbruch auch nicht mehr nach der überschrift. das macht dir die tabellenausgabe.
                  der tabellenumbruch ist vor der ausgabe der daten, damit nach dem letzten datensatz nicht nochmal eine leere zeile an die tabelle angehangen wird. das sieht nicht schön aus und deswegen als letztes immer die daten ausgeben.
                  Zuletzt geändert von KamiKatze; 04.11.2005, 10:48.
                  ich geh zum lachen in den keller

                  Kommentar


                  • #10
                    PERFEKT!!

                    KamiKatze, ich danke dir. das ist super!! für mich ist das schon zu kompliziert, das hätte ich alleine nie hingebracht..

                    danke nochmals!!

                    Kommentar

                    Lädt...
                    X