Andavos: Rausfinden welche Spalten es gibt

Hallo,
kann ich mit MySQL + PHP herrausfinden, wie alle Spalten in einer Tabelle heißen, ohne phpMyAdmin zu benutzen?

Bitte nicht sowas komplizertes schreiben, sondern am besten einen Codeschnipsel oder einen Link, der das wirklich gut und einfach Erklärt.

MFG
Andavos

--
http://www.rpgcommunity.de/clanwissen/index.php Webdesign, PHP, Clan-Aufbau und mehr
  1. Hallo Andavos,

    /* Die Tabelle users enthält drei Felder:
         user_id
         username
         password
    */
    $link = mysql_connect('localhost', "mysql_user", "mysql_password");
    mysql_select_db($dbname, $link)
        or die("Auswahl der Datenabnk $dbname fehlgeschlagen: " . mysql_error());
    $res = mysql_query("select * from users", $link);

    echo mysql_field_name($res, 0) . "\n";
    echo mysql_field_name($res, 1) . "\n";
    echo mysql_field_name($res, 2);

    Ganz einfach gefunden bei http://www.php.net/manuals/de und ganz konkret unter http://www.php.net/manual/de/function.mysql-field-name.php

    Cool, oder?

    Schönen Gruß aus München

    die knappschaft

    --

    sh:(  fo:|  ch:?  rl:°  br:$,<,>  n4:&  ie:|  mo:|  va:)  de:]  zu:)  fl:|  ss:|  ls:[,#
    1. Hallo,
      jo das wäre eine möglichkeit, aber kann ich irgendwie alles Ausgeben lassen, ohne das ich immer "echo mysql_field_name($res, 0) . "\n";" schreiben muss?

      Denn was ist wenn ich nicht genau weiß, wieviele Spalten eine Tabelle hat`?

      MFG
      Andavos

      --
      http://www.rpgcommunity.de/clanwissen/index.php Webdesign, PHP, Clan-Aufbau und mehr
      1. Hallo Andavos,

        dann nimmst du halt eine Schleife. While würde sich doch anbieten, oder. Bei jedem Durchlauf zählst du dein ($res, 0) um einen hoch.

        Schönen Gruß aus München

        die knappschaft

        --

        sh:(  fo:|  ch:?  rl:°  br:$,<,>  n4:&  ie:|  mo:|  va:)  de:]  zu:)  fl:|  ss:|  ls:[,#
        1. Hallo,
          ja, aber wie weiß ich denn wieviele Spalten eine Tabelle hat?

          Wenn ich sag, das er bei 500 aufhören soll, dann erhalte ich jedes mal eine Fehlermeldung, wenn es diese Spalte nicht gibt, und das möchte ich ja nicht.

          Wie gesagt, wenn ich nicht weiß wieviele Spalten eine Tabelle hat.

          MFG
          Andavos

          --
          http://www.rpgcommunity.de/clanwissen/index.php Webdesign, PHP, Clan-Aufbau und mehr
          1. Hallo Andavos,

            warum liest du nicht unter den Links, die ich dir gegeben habe, weiter?

            <?php
            $link = mysql_connect('localhost', 'mysql_user', 'mysql_password');

            $fields = mysql_list_fields("database1", "table1", $link);
            $columns = mysql_num_fields($fields);

            for ($i = 0; $i < $columns; $i++) {
                echo mysql_field_name($fields, $i) . "\n";;
            }

            Das steht da doch alles, oder?

            Schönen Gruß aus München

            die knappschaft

            --

            sh:(  fo:|  ch:?  rl:°  br:$,<,>  n4:&  ie:|  mo:|  va:)  de:]  zu:)  fl:|  ss:|  ls:[,#
  2. Hallo,

    kann ich mit MySQL + PHP herrausfinden, wie alle Spalten in einer Tabelle heißen, ohne phpMyAdmin zu benutzen?

    Ja, nach intensivem Handbuchstudium (ca. 2 Minuten) fand ich auch etwas, das sich mit diesem Thema auseinandersetzt:
    http://www.mysql.com/doc/en/Show_database_info.html
    http://www.mysql.com/doc/en/DESCRIBE.html

    Grüße
      Klaus

  3. Hallo,
    kann ich mit MySQL + PHP herrausfinden, wie alle Spalten in einer Tabelle heißen, ohne phpMyAdmin zu benutzen?

    Bitte nicht sowas komplizertes schreiben, sondern am besten einen Codeschnipsel oder einen Link, der das wirklich gut und einfach Erklärt.

    MFG
    Andavos

    Hallo Andavos,

    Es gibt noch eine andere Möglichkeit.

    $sql="select * from mytable";
    $res mysql_query($sql) or die("Das war wohl nix!");
    for($i=0; $i < mysql_num_fields; $i++)
    {
     echo mysql_field_name($res, $i)."<br>\n";

    }