INSERT mit variablen

AcidOne

Gesperrt
Hi,

ich hab ne kleine Frage? Ich habe ein Formular in dessen die ganzen Inputs den Namen aus dem Query_String erhalten. zb. ...php?modul=gsg

so jetz will ich diese daten logischer weise auch in ne DB speichern.

So nun versuche ich verzweifelt folgen befehl zu machen.

INSERT INTO db (".$modul.") VALUES ('$modul'1); und so weiter und so fort!


Kleine frage geht das überhaupt oder was muss ich machen das es funktionukkelt. Also direkt von vorne rein die Eins im INSERT isrt beabsichtigt aber warum des net wie kann ich des also hinbekommen ?

Danke schonmal für die schnelle Hilfe

GreetZ Acidone
 
Um ehrlich zu sein habe ich nicht verstanden was dein Anliegen ist.

Wäre es möglich das Problem, bzw deine Frage etwas deutlicher zu formulieren?
 
Sicher Sicher

Also ich schreib grad an einem teil wo man Bilder und so reinknallen kann. So jetzt hab ich dazu logischweise noch text und und und. Soweit so gut.

jetzt geb ich über die URL den Inputs im Formular halt den wert.

z.B: index.php?modul=gsg
so dann bekommen die Inputs den wert:

<input type="text" name="<?=$_GET['modul'] ?>1">;

so nun möchte ich weil das Input dann genauso heisst wie meine Felder in der Datenbank die Datenbank mit den Variablen namen füllen .

Also ich will versuchen das die Datenbank dann durch folgenden "oder ähnlichem" Befehl gefüttert wird.

$db="INSERT INTO ".$modul." (".$modul.'1) VALUES (".$modul.'1)";
$s=mysql_query($db);

und so weiter und sofort.

geht diese Methodik in irgendeiner weise oder kann ich des vergessen und muss also mittlerweile 5 Querys machen

Danke für jede Hilfe

GreetZ acidone
 
in die erste ( ) kommt der Spaltenname wo ein betreffender Inhalt rein soll , in den zweiten ( ) steht dann der Inhalt

Also wenn du deine Tabelle "db" hast und in die Spalte "text"
den Inhalt aus Variable $modul1 einfügen möchtest, machst du das:

INSERT INTO db (text) VALUES ('$modul'1);

Übergebene Werte kannst du mit $_GET["NAME"] auslesen.
In deinem Falle $_GET["modul"].
 
PHP:
$db="INSERT INTO ".$modul." (".$modul."1) VALUES ('".$modul."1')";

So kannst du das machen...Immer mit " String sbschliessen bzw. wieder beginnen und mit ' noch bei VALUES den Wert umranden (wenn er vom Datentyp TEXT ist...)
 
hmmmmm

@ aqua THANXs ;)

an alle anderen Ich bekomm keine werte in die datenbank. Mittlerweile glaube ich halt auch das es net f u n k e n wird! ich werd halt ma dann flott mehrere Querys schreiben "müssen"

Trotzdem danke

GreetZ AcidOne
 
Re: hmmmmm

AcidOne hat gesagt.:
[Ban alle anderen Ich bekomm keine werte in die datenbank. Mittlerweile glaube ich halt auch das es net f u n k e n wird!
Also noch mal zur Verständnisfrage:

Du hast ein Formular, welches Du beispielswiese über formular.php?modul=test aufrufst? Richtig?

Ok, in dem Formular hast Du Formular-Elemente, dessen Namen alle dynamisch sind? Also

Code:
<input type="text" name="<?php echo $_GET['modul']]" />

Richtig? Ok, und dann hast Du eine Seite, die den ganzen Inhalt in Deine Datenbank einträgt? Richtig?

Also davon abgesehen, dass das Datenbankdesign vielleicht etwas unpraktisch ist, würd ich folgendes probieren:

Lass Dir mal den SQL-Query ausgeben, um zu sehen, was da überhaupt drinsteht.

Außerdem, Dir ist klar, dass Du dem Script, welches den Eintrag in der Datenbank vornimmt, auch die Variable modul übergeben musst (per Hidden-Field oder per URL)?

Also irgendwie, ich versteh immer noch nich so wirklich wo Dein Problem liegt.
 
Zurück