Variablen aus HTML an PHP übergeben

Guten Tag,

ich habe folgendes Problem: ich habe ein HTML programm, das 3 text eingaben annimmt. diese sollen dann an den PHP teil des Programms übergeben werden, der diese dann ausgibt. dies soll immer geschehen, wenn der bestätigungs button gedrückt wird.
leider habe ich bisher nur diese methode gefunden:
form action=„xyz.php“ method=„post“
dafür muss jedoch eine zweite seite geöffnet werden, was ja verhindert, dass ich neue werte eingeben kann.
hat jemand einen vorschlag?

Hallo Einzeller,

du kannst nur auf zwei Arten Variablen übergeben, das geht indem du ein formular verschickst und auf der zielseite die verschickten daten per $_POST empfängst und verarbeitest

und indem du parameter an die URL anhängst. Die werden dann per $_GET auf der zielseite empfangen und verarbeitet.

wie genau ein neuer seitenaufruf (das A und O bei PHP um änderungen zu kommunizieren) dein script behindert kann ich ohne Glaskugel leider nicht wissen.

Falls du ein Asynchrones verhalten deiner seite Wünscht, kann ich dir die AJAX technologie ans herz legen, diese wurde genau zu diesem zweck entwickelt.

viel erfolg weiterhin.

Alternativ kann dir der Übergabemodus auch egal sein und du greifst per superglobal

$_REQUEST

auf die Variabeln zu.

Du kannst auch, falls das die Frage war, die Daten statt an eine 2. Datei auch an die selbe Datei senden(dann aber keine HTML-Datei in der sich das Formular befindet, sondern eine php-Datei).

Bsp.:
Datei: formular.php

an der Stelle auf der Seite an der die abgeschickten Daten angezeigt werden sollen:

<?php if($_POST['go']){<br /> echo $\_POST['text'];
 //...
}
?\>

ist jetz ungetestet ausm Kopf, sollte funktionieren… das Formular wird an die Seite geschickt in dem sich das Formular selbst befindet… wenn der submit-button gedrückt wurde kommen auf der Seite die Daten des Formulars an, was überpüft wird mit „if($_POST[‚go‘])“ „go“ ist der Name des submit-buttons.

Ich hoff das hilft dir weiter und ich habe deine Frage richtig verstanden :wink:

PS: es gibt keine HTML-Programme… vielleicht den netten wikipedia-Artikel zum Thema Html > „…textbasierte Auszeichnungssprache zur Strukturierung von Inhalten…“ durchlesen ^^ http://de.wikipedia.org/wiki/Hypertext_Markup_Language.
PHP-Programme gibt es eig. auch nicht wirklich, da PHP eine Skriptsprache ist :wink: http://de.wikipedia.org/wiki/Php

Gruß

  1. super! vielen dank!

mein code sieht bisher so aus:

Tabelle

abc, def, ghi, jkl,

<?php if($_POST['go']){
echo " "; echo "abc def ghi jkl "; echo "",$\_POST['text1']," ",$\_POST['text2']," ",$\_POST['text3']," ",$\_POST['text4']," "; echo ""; } ?\> damit wird eine tabelle mit der überschrift "abc" (erste spalte) "def" (zweitte spalte)...und so weiter und den werten in der nächsten zeile angelegt. jedoch kann man so nur einmal werte eingeben (beim nächsten eingeben werden die alten ersetzt). Das ziel ist aber, dass neue werte in die zeile dartunter geschrieben werden. Irgendwelche ideen?

Achso, wenn du die alten Werte weiterhin erhalten willst wird das ganze wiederum etwas komplizierter… Meine Idee, wenn auch etwas umständlich, aber einfacheres fällt mir gerade nicht ein, ist die alten Werte in ein „hidden“-Feld im Formular packen und wieder mitschicken.

dann müsstest du eben nach den Kommas den String jedesmal splitten und dann nochmal auftrennen nach Anzahl der Felder die das Formular hat, dann hast du die einzelnen „alten“ Formularinhalte auch noch nach x-mal abschicken des Formulars… Das ist sicher nicht die beste Möglichkeit und etwas umständlich, vllt hat ja jemand anderes einen besseren Einfall.
Wenn ich ehrlich sein soll wäre hier doch für eine dauerhafte Speicherung der einzelnen Daten eine MySQL-Datenbank die bessere und einfachere Wahl. Da ich aber dein genaues Projekt-Ziel nicht kenne, ist das auch nur eine Vermutung :wink:

Gruß