Feldernamen Und Daten auslesen mit Arrays

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

  • Feldernamen Und Daten auslesen mit Arrays

    ich bin mal wieder am werkeln...

    und hab nen kleines Problem, ich Programmiere ein Skript das mir die feldnamen einer Tabelle anzeigt und die passenden Daten einfügt.

    Also auf Gut Deuscth ich will die Tabelle komplett ausgeben.

    die Feldernamen hol ich mit
    PHP-Code:
    $anz mysql_num_fields($result);
    $x 0;

    for (
    $x$x $anz$x++){
    $name mysql_field_name($result,$x);
    echo 
    $name;

    Also die Tabellen zeichnen ist so kein Problem.
    aber die Datensätze einzufügen.

    ich habs mit probiert
    PHP-Code:
    while($row=mysql_fetch_array($result)){
             echo    
    "<div>" $row["($name)"] . "</div>>";

    da wo Jetzt ($name) steht soll der erste wert des feldnamens
    stehen.
    Wisst ihr rein zufällig wie das geht ?

    Greetz NoBear
    Zuletzt geändert von NoBear; 29.06.2006, 16:59.

  • #2
    PHP-Code:
    while($row=mysql_fetch_array($result)){
             echo    
    "<div>" $row["($name)"] . "</div>>";

    Dein Code scheitert ja schon allein daran, dass $ name nicht definiert ist, oder sich nicht ändert. au

    mit foreach kannst du aber alle inhalte von $row ausgeben

    BTW: was haben divs bei der ausgabe einer tabelle zu suchen?

    Kommentar


    • #3
      die divs sind für nacher um die klassen zu definieren für die *.css datei
      Wegen anderer Schrift und so.

      $name ist definert als
      mysql_field_name($result,$x);

      Kommentar


      • #4
        Nicht, dass man die tds nicht direkt definieren könnte, aber das ist ein anderes thema.

        ja, nur ändert sich das ja nicht.

        Schau dir mal an, wie es phpMyAdmin macht. Vom Prinzip her so:


        SELECT-Query
        dann erste Zeile (th) mit den spaltennamen
        dann jede zeile ausgeben while()
        - dann z.B. die genannte foreach-Schleife.

        Kommentar


        • #5
          kk ich versuchs mal so..

          Edit:
          habs versucht und hat fast geklappt...



          Hier der dazugehörige Code:
          PHP-Code:
          $anz mysql_num_fields($result);
          $x 0;
          echo    
          "<table border='1'>";
          echo    
          "<tr>";
          for (
          $x$x $anz$x++){
          $name mysql_field_name($result,$x);
          echo    
          "<th>$name</th>";
          }
          echo    
          "</tr>";
          while(
          $row mysql_fetch_array($result)){
          echo    
          "<tr>";
                   foreach (
          $row as $value){
                   echo    
          "<td>".$value ."</td>";
              }
          echo    
          "</tr>";
          }
          echo    
          "</table>"
          weis einer woran die Doppelte ausgabe liegt ?
          Zuletzt geändert von NoBear; 29.06.2006, 18:43.

          Kommentar


          • #6
            weis echt keiner woran das liegt ....?

            sry für doppelpost

            Kommentar


            • #7
              Doch doch ich weiss es....
              mysql_fetch_row($result), oder mysql_fetch_array($result,MYSQL_NUM);

              Kommentar


              • #8
                kk Thx gleich mal probieren

                Kommentar


                • #9
                  so fertig:
                  PHP-Code:
                  $esgibt mysql_num_rows($result);
                  if(
                  $esgibt == '0'){
                           echo    
                  "<div class='main_info'>Es sind keine Daten Vorhanden!</div>";
                      }
                           else{
                      echo    
                  "<div class='main_info'>Es gibt $esgibt $teil</div>";
                  $anz mysql_num_fields($result1);
                  $x 0;
                  echo    
                  "<table border='1'>";
                  echo    
                  "<tr>";
                  for (
                  $x$x $anz$x++){
                  $name mysql_field_name($result2,$x);
                  echo    
                  "<th>$name</th>";
                  };
                  echo    
                  "</tr>";
                  while (
                  $row1 mysql_fetch_array($result3MYSQL_NUM)){
                          
                  $z=0;
                          echo    
                  "<tr>";
                          while(
                  $z $anz){
                           echo    
                  "<td>" $row1[$z] . "</td>";
                           
                  $z++;
                           }
                           echo 
                  "</tr>";
                           }
                  echo    
                  "</tabel>";

                  THX @ all

                  Kommentar

                  Lädt...
                  X