PHP...SQL dynamisch erzeugte Tabelle

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

  • PHP...SQL dynamisch erzeugte Tabelle

    Hallo alle. Peet hier.

    Hab ein Problem mit meinem php Skript.

    Über ein Formular werden die Felder s1 bis s11 mit Werten befüllt und an mein Skript geschickt: Variablen $s1 bis $s11.

    Dieses soll dann je nach Vorhandensein von Inhalten in den einzelnen Variablen eine Tabelle erzeugen, die dann auch nur Spalten für die vorhandenen Variablen beinhaltet.

    Die Verbindung zur Datenbank funktioniert. Das hab ich getestet.

    Das Formular ist auch o.k. und der Aufruf des Skripts läuft auch.

    Die Tabelle ist aber nach Ablauf des Skripts nicht erzeugt. Was läuft da falsch?

    Hier der Quelltext:

    <?php

    error_reporting(E_ALL);

    $server= "xxx";
    $user= "xxx";
    $passwort= "xxx";
    $datenbank= "xxx";

    MYSQL_CONNECT($server, $user, $passwort) or die ("<H3>Datenbankserver nicht erreichbar</H3>");
    MYSQL_SELECT_DB($datenbank) or die ( "<H3>Datenbank nicht vorhanden</H3>");

    $abf="CREATE TABLE $tab (";

    if($s1!=""){
    $abf=$abf."$s1 varchar(25), ";
    $anz=$s1.", ";
    }

    if($s2!=""){
    $abf=$abf."$s2 varchar(25), ";
    $anz=$anz.$s2.", ";
    }

    if($s3!=""){
    $abf=$abf."$s3 varchar(25), ";
    $anz=$anz.$s3.", ";
    }

    if($s4!=""){
    $abf=$abf."$s4 varchar(25), ";
    $anz=$anz.$s4.", ";
    }

    if($s5!=""){
    $abf=$abf."$s5 varchar(25), ";
    $anz=$anz.$s5.", ";
    }

    if($s6!=""){
    $abf=$abf."$s6 varchar(25), ";
    $anz=$anz.$s6.", ";
    }

    if($s7!=""){
    $abf=$abf."$s7 varchar(25), ";
    $anz=$anz.$s7.", ";
    }

    if($s8!=""){
    $abf=$abf."$s8 varchar(25), ";
    $anz=$anz.$s8.", ";
    }

    if($s9!=""){
    $abf=$abf."$s9 varchar(25), ";
    $anz=$anz.$s9.", ";
    }

    if($s10!=""){
    $abf=$abf."$s10 varchar(25), ";
    $anz=$anz.$s10.", ";
    }

    if($s11!=""){
    $abf=$abf."$s11 varchar(25)";
    $anz=$anz.$s11;
    }

    $abf=$abf.")";

    echo $abf;

    $erg=MYSQL_QUERY($abf);

    echo"Tabelle $tab erzeugt. Spalten: ".$anz;

    MYSQL_CLOSE();
    ?>

    Danke. Gruß. Peet.

  • #2
    mysql_error()

    Kommentar


    • #3
      Vielleicht speicherst du ja SQL Schlüselwörter mit.. setz mal um die Variablen einfache Anführungszeichen, also
      '$s1'
      '$s2'
      usw...

      mfg oko

      Kommentar


      • #4
        wie sieht denn dein echo $abf; aus? mal im pma probiert?

        Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
        sondern mit den Augen das Manual zu lesen.

        Kommentar

        Lädt...
        X