Ergebnis 1 bis 5 von 5
-
15-05-2007, 22:22 #1
Jungspund
- registriert
- 24-10-2006
- Beiträge
- 24
HTML-Formular Wert mittels Javascript an PHP übergeben
Ich habe ein Formular wo ich einen Wert übergeben will, onclick löst eine Javascriptfunktion aus, die den Wert aus einem Textarea einlesen soll.
(soweit funktioniert es auch)
Das Problem ist action. In einem Buch steht das ich diese setzen muss, und es mit $PHP_SELF machen kann. Das dumme ist nur das diese Variable keinen Wert enthält und ich deswegen ständig gesagt bekomme das ich keine Rechte für diesen Vorgang habe.
<form enctype="text/plain" methode="post" name="sendform">
<textarea id="ID_Befehl" name="f_befehl" disabled>SELECT FROM kursdaten;</textarea>
<button type="button" value="f_cancel" onclick="javascript:setz_sql_befehl_zuruck()" class="feld"> Zurücksetzen </button>
<button type="button" value="" onclick="send_data_to_sql()" class="feld" name="sql_befehl"> Senden </button>
</form>
so weit das html (es steht in der Datei tab.php)
Das Javascript steht in der Datei befehlsausgabe.js
function get_befehl()
{
str_sel = 'SELECT ';
str_from = ' FROM kursliste; ';
str_sql_befehl = str_sel + str_befehl + str_from;
return str_sql_befehl;
}
function send_data_to_sql()
{
sql_befehl = get_befehl();
document.sendform.methode = "post";
document.sendform.sql_befehl.value = sql_befehl;
document.sendform.action = "<? $PHP_SELF ?>";
document.sendform.submit();
}
der php code der den Wert aufrufen soll lautet
if ($sql_befehl)
{
$str_test = $str_test . "<br><br>Deine bewertung <b> $sql_befehl </b> wurde registriert !<br><br>";
}
und steht in tab.php
Die URL auf dem dies ausgegeben wird lautet (index.php?cmd=tab&nr_i=0)
index.php selber liefert mir einen Wert für $PHP_SELF, wenn ich die oben genannte URL als action setze dann springt er mir nach index.php,
also zu meiner Hauptseite...
er soll mir aber den String aus der Textarea ausgeben. Ich suche seit Stunden und komm einfach nicht weiter.
Gibt es einen anderen Weg das Formular auszulesen als die URL oder $PHP_SELF bei action zu benutzen ???
Assija
-
15-05-2007, 22:51 #2
Routinier
- registriert
- 21-04-2007
- Beiträge
- 409
AW: HTML-Formular Wert mittels Javascript an PHP übergeben
Die Variable $PHP_SELF ist nur verfügbar solange das Script auf dem Server ausgeführt wird. Wenn das Ergebnis an den User gesendet wurde kann nicht mehr auf PHP-Variablen zugegriffen werden.
PHP ist serverseitig und Javascript ist clientseitig. Informiere dich bitte mal darüber. Das bedeutet, dass du auf Werte von PHP-Skripten nicht innerhalb von Javascript ohne weiteres zugreifen kannst.
Eine Möglichkeit wäre z.b. deinen Javascript-Code serverseitig zu erstellen innerhalb der tab.php.
Darin kannst du auf $PHP_SELF zugreifen.
z.b. so:
Code:echo "function send_data_to_sql()\r\n"; echo "{ sql_befehl = get_befehl();\r\n"; echo "document.sendform.methode = \"post\";\r\n"; echo "document.sendform.sql_befehl.value = sql_befehl;\r\n"; echo "document.sendform.action = \"".$PHP_SELF."\";\r\n"; echo "document.sendform.submit(); }\r\n";
-
15-05-2007, 23:23 #3
Jungspund
- registriert
- 24-10-2006
- Beiträge
- 24
AW: HTML-Formular Wert mittels Javascript an PHP übergeben
Es ist ja an sich schon das problem das
tab.php
aufgerufen über die url (index.php?cmd=tab&nr_i=0)
den wert $PHP_SELF nicht kennt, bzw die ausgabe der variablen liefert einen leeren String.
Ich habe das jetzt mal mit nem anderen Seite probiert... da geht es mit javascript auch nicht das Problem ist das mehrere php seiten das gleiche script brauchen *seufz*
und auch wenn ich das javascript in tab.php kopiere gibt er mir den wert der in $PHP_SELF enthalten sein sollte nicht aus...
gibt es eine möglichkeit aus einem formular DIREKT eine php funktion aufzurufen... dann bräuchte ich wenn ich glück habe nur den inhalt der textarea auszulesen (die von javascript gefüllt wird... )
Assija
-
16-05-2007, 10:01 #4
AW: HTML-Formular Wert mittels Javascript an PHP übergeben
Hi!
Dein oben beschriebens Skript sollte funktionieren, du solltest jedoch auf PHP_SELF über das suberglobal-Array $_SERVER zugreifen, ausserdem müßtest du auch noch eine Ausgabe der Variable vornehmen sonst steht da auch nichts an dieser Stelle, dann würde das so aussehen:
document.sendform.action = "<?php print $_SERVER['PHP_SELF']; ?>";..:::Andi:::..
-
16-05-2007, 14:40 #5
AW: HTML-Formular Wert mittels Javascript an PHP übergeben
ich hoffe du gibst das was in sql_befehl drin steht nicht ungeprüft an deine Datenbank weiter.
Ansonsten kannst du doch den wert von action direkt im Formular setzten, dafür braucht man doch kein JS
Ähnliche Themen
-
Verständnisproblem mit PHP Script und JavaScript
Von krusty007 im Forum JavaScriptAntworten: 2Letzter Beitrag: 24-10-2006, 10:11 -
Mit JavaScript auf PHP Variable zugreifen
Von Willow im Forum JavaScriptAntworten: 26Letzter Beitrag: 18-01-2006, 18:21 -
Javascript soll im Formular zwei Variablen addieren...
Von Stardreamer im Forum JavaScriptAntworten: 5Letzter Beitrag: 12-09-2005, 12:37 -
Werte aus Formular bei Aufruf in anderes Formular (Datei) übergeben
Von jacky im Forum Serverseitige ProgrammierungAntworten: 4Letzter Beitrag: 17-10-2002, 14:08 -
pflichfelder im formular bei php + Bestätigungsmail
Von gitiai im Forum Serverseitige ProgrammierungAntworten: 4Letzter Beitrag: 16-07-2002, 17:05
Lesezeichen