Supportnet / Forum / Skripte(PHP,ASP,Perl...)
Wer kann mir sagen, wo der Fehler ist???
Frage
Hallo,
ich bin gerade dabei mich etwas in PHP einzuarbeiten. Zu testzwecken habe ich mir extra einen WAMP server aufgesetzt. Der Funktioniert auch schon einwandfrei. Jetzt habe ich ein Formular in html geschrieben, das die Daten in ein php-File senden soll. Leider passiert gar nichts. Die PHP Seite wird zwar geladen, aber die Variable wird nicht ausgegeben. Woran koennte das liegen.
Der Quellcode meines Formulars sieht so aus:
<html>
<head>
<title>Formular</title>
</head>
<body>
<form action="form2.php" method="post">
<input type="text" size="17" name="Inhalt">
<br><br>
<input type="submit" value="OK">
</form>
</body>
</html>
Der Quellcode meines form2.php Files sieht so aus:
<html>
<head>
<title>form2.php</title>
<head>
<body>
<br><br>
<?
echo $Inhalt;
?>
</body>
</html>
Wo liegt den hier der verdammte Fehler?
Antwort 1 von Pebbles14
Ich habe gerade im Internet einen anderen Script gefunden bei dem im PHP File noch diese while-Schleife vorhanden war. Allerdings blicke ich noch nicht ganz durch, was dort gemacht wird. Diese Zeile habe ich auch in keinem anderen Beispiel gefunden. Kann mir mal wer sagen, was diese Zeilen dort machen?
while(list($name,$value)=each($HTTP_POST_VARS)) {
$message.="$name: $value\n\n";
}
while(list($name,$value)=each($HTTP_POST_VARS)) {
$message.="$name: $value\n\n";
}
Antwort 2 von engine
Na im Script ganz bestimmt nicht!
schau doch erstmal was er hiermit anfängt :
Grüße
Frank
schau doch erstmal was er hiermit anfängt :
<?
phpinfo();
?>Grüße
Frank
Antwort 3 von engine
Hallo Pebbles
'each' wird typischerweise zusammen mit 'list' verwendet, um ein Array zu durchlaufen, hier zum Beispiel das $HTTP_POST_VARS-System-Array !
Füge echo "$message"; ein.
Siehe auch "key, current, reset, next und prev.
Ach ja ne Frage "was interresiert Dich das ?"
Grüße
Frank
'each' wird typischerweise zusammen mit 'list' verwendet, um ein Array zu durchlaufen, hier zum Beispiel das $HTTP_POST_VARS-System-Array !
Füge echo "$message"; ein.
Siehe auch "key, current, reset, next und prev.
Ach ja ne Frage "was interresiert Dich das ?"
Grüße
Frank
Antwort 4 von Pebbles14
Der PHP-Info-Befehl listet natürlich die Informationen von meinem PHP.
@engine
ich weiß nur, das der Script damit funktioniert, da er alle Variablen einliest. Soviel habe ich in der zwischenzeit schon herausgefunden. Mich interessiert das, weil ich schließlich wissen will, was ich da eigentlich programmiere.
@engine
ich weiß nur, das der Script damit funktioniert, da er alle Variablen einliest. Soviel habe ich in der zwischenzeit schon herausgefunden. Mich interessiert das, weil ich schließlich wissen will, was ich da eigentlich programmiere.
Antwort 5 von Renegade
Hast du PHP - Version 4.2?, dann probier es einmal mit $_POST['Inhalt'] oder bearbeite dein php.ini - File, setze dort register_globals = on (was natürlich nicht im Sinne der Zend-Engine bzw. Sicherheit ist)
cu *wink*
cu *wink*
Antwort 6 von Pebbles14
Ich habe die neuerste PHP-Version installiert, die es momentan gibt. Das mit der while-Schleife geht doch nicht, da ich später mehrere Variablen übergeben will und die dann alle auf eine Variable geschrieben werden.
@Renegade ich werde deine Tipps gleich mal ausprobieren.
Aber wodran koennte es sonst noch liegen?
@Renegade ich werde deine Tipps gleich mal ausprobieren.
Aber wodran koennte es sonst noch liegen?
Antwort 7 von MixMax
wird im Quelltext einfach
ausgegeben kann es daran liegen das die einstellung in der PHP.ini eingestellt ist das er die kurze form nicht akzeptiert, schreibe am besten immer
<?
echo $Inhalt;
?>ausgegeben kann es daran liegen das die einstellung in der PHP.ini eingestellt ist das er die kurze form nicht akzeptiert, schreibe am besten immer
<?php
echo $Inhalt;
?>Antwort 8 von Pebbles14
Auch daran liegt es nicht. Habe es gerade ausprobiert. Könnte ich vielleicht noch irgend was verkehrt eingestellt haben?
Antwort 9 von MixMax
Antwort 10 von semi
Versuche den Namen des Feldes im Formula klein zu schreiben.
html
php
Wenn in php.ini der folgende Eintrag
short_open_tag=Off steht, dann ändere ihn in short_open_tag=On oder verwende immer <?php am Anfang eines PHP-Abschnitts.
Sonst in httpd.conf prüfen, ob dort etwas dieser Art steht:
LoadModule php4_module modules/php4apache.dll
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .php4
AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .phtml
Wenn trotzdem nichts geht, dann ist Dein PHP putt.
Es gibt bei AnalogX ein gutes Konfigurationsprogramm für PHP.
Guckst Du hier: http://www.analogx.com/contents/download/network/phpconf.htm
Gruss,
Michael
html
<html>
<head>
<title>Formular</title>
</head>
<body>
<form action="form2.php" method="post">
<input type="text" size="17" name="inhalt">
<br><br>
<input type="submit" value="OK">
</form>
</body>
</html>
php
<html>
<head>
<title>form2.php</title>
<head>
<body>
<br><br>
<?php
echo $_POST['inhalt'];
?>
</body>
</html>
Wenn in php.ini der folgende Eintrag
short_open_tag=Off steht, dann ändere ihn in short_open_tag=On oder verwende immer <?php am Anfang eines PHP-Abschnitts.
Sonst in httpd.conf prüfen, ob dort etwas dieser Art steht:
LoadModule php4_module modules/php4apache.dll
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .php4
AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .phtml
Wenn trotzdem nichts geht, dann ist Dein PHP putt.
Es gibt bei AnalogX ein gutes Konfigurationsprogramm für PHP.
Guckst Du hier: http://www.analogx.com/contents/download/network/phpconf.htm
Gruss,
Michael
Antwort 11 von MixMax
wenn es nicht daran liegen sollte, was wirft er den nun raus ?
den php-tag oder gar nix ?
wenn er <?php... auswirft dann sollte es was mit der endung und dieser von semi genannten einstellung zu tun haben (sorry, mit Linux kenn ich mich nicht so aus, wegen Textdateien bearbeiten, dachte aus dem alter wären die PC's raus)
den php-tag oder gar nix ?
wenn er <?php... auswirft dann sollte es was mit der endung und dieser von semi genannten einstellung zu tun haben (sorry, mit Linux kenn ich mich nicht so aus, wegen Textdateien bearbeiten, dachte aus dem alter wären die PC's raus)
Antwort 12 von Pebbles14
also, bei mir wirft er gar nichts aus. Ich nehme mal an, das ich irgend etwas verkehrt in meinem Apache bzw. in meinem PHP konfiguriert habe. Leider weis ich nicht was. Erstmal danke fuer euren Zahlreichen Tipps, ich werde sie gleich mal ausprobieren. Danke auch an MixMax, der den Script getestet hat. So kann ich wenigstens den Script zur Fehlersuche einsetzen. Sollte ich eine Lösung gefunden haben, benachrichtige ich euch.
Antwort 13 von Pebbles14
@Renegade Sorry, dein Tipp hat leider nichts gebracht.
@semi Ich habe gerade deinen Script ausprobiert. Er funktioniert leider auch nicht. Auch habe ich noch die httpd.conf ausgebessert, d.h. ich musste noch die LoadModule-Zeile nachtragen. Auch damit funktioniert es leider nicht.
Ich bin echt ratlos. Hat vielleicht der Apache 1.23 probleme mit PHP 4.2. Ich glaube das ich mal den Apache 2.0 installieren werde. Vielleicht geht es ja damit.
@semi Ich habe gerade deinen Script ausprobiert. Er funktioniert leider auch nicht. Auch habe ich noch die httpd.conf ausgebessert, d.h. ich musste noch die LoadModule-Zeile nachtragen. Auch damit funktioniert es leider nicht.
Ich bin echt ratlos. Hat vielleicht der Apache 1.23 probleme mit PHP 4.2. Ich glaube das ich mal den Apache 2.0 installieren werde. Vielleicht geht es ja damit.
Antwort 14 von thomasn1975
Guck mal nach, ob in der php.ini der Parameter
register_globals=On
gesetzt ist.
register_globals=On
gesetzt ist.
Antwort 15 von Pebbles14
@thomasn1975
das habe ich bereits ausprobiert. Das ist der selbe Tipp wie mir Renegade bereits gegeben hat. Trotzem Danke!
das habe ich bereits ausprobiert. Das ist der selbe Tipp wie mir Renegade bereits gegeben hat. Trotzem Danke!
Antwort 16 von Pebbles14
Sorry semi,
dein Tipp hat doch geholfen, nach einem Neustart des Wamp-Servers geht es jetzt. Vielen Dank an alle für die schnellen und Hilfreichen Tipps.
MfG
Pebbles
dein Tipp hat doch geholfen, nach einem Neustart des Wamp-Servers geht es jetzt. Vielen Dank an alle für die schnellen und Hilfreichen Tipps.
MfG
Pebbles

