Seite 1 von 1

Wertübergaben funktionieren nicht per Apache!! Oder??

Verfasst: 13.10.2003 22:42
von 18inch
Hallo,
ich lese mich gerade in php ein und habe ein kleines Script geschrieben, welches nur ein paar Eingaben vom User per Formular (Submit-Button) übergeben soll und auf der nächsten Site nochmal darstellen soll!
Index Site:

Code: Alles auswählen

<form action="formularauswertung.php">
<h3>Einfache Eingabefelder</h3>
Text<input type= "text" name= "txt" size= "50">
<br>
Ganzzahl<input type="int" size="40" name="gz><br>
Flie&szlig;kommazahl <input type="float" size="30" name="fkz">
<br>
Datum<input type="date" size="20" name="dat">
URL<input type="url" size="10" name="url">
<br>
<h3>Optionsschaltfl&auml;chen / Kontrollk&auml;stchen</h3>
<input type="radio" name="option" value="1" checked>
Erste Option
<input type="radio" name="option" value="2">
Zweite Option
<br>
<input type="checkbox" name="kontroll[]" value="1" checked>
Erste Option
<input type="checkbox" name="kontroll[]" value="2">
Zweite Option
<h3>Schaltfl&auml;chen</h3>
Ausf&uuml;hren&nbsp;&nbsp;<input type="submit">
Zur&uuml;cksetzen&nbsp;&nbsp;<input type="reset">
frei definierbar<input type="button" value="Test">
<h3>Verstecktes Element</h3>
<input type="hidden" name="vst" value="irgendetwas">
<h3>Datei           </h3>
<input type="file" name="dat">
<h3>Auswahlliste    </h3>
<select name="liste">
	<option> Erstes Element
	<option> Zweites Element
	<option> Drittes Element
</select>
</form>
Hier die Auswertungssite:

Code: Alles auswählen

<?php
	echo "<h2>Sie haben die folgenden Eingaben gemacht: </h2>\n";
	echo "Text: $txt <br>\n";
	echo "Ganzzahl: $gz <br>\n";
	echo "FLie&szlig;kommazahl: $fkz <br>\n";
	echo "URL: $url <br>\n";
	echo "<h3>Optionsschaltfl&auml;chen / Kontrollk&auml;stchen</h3>\n";
	echo "Optionsgruppe : $option <br>\n";
	echo "Kontrollk&auml;stchen : <br>\n";
	for($i = 0; $i < 2; $i++)
	   if(isset($kotroll[$i]))
	     echo $kontroll[$i] . "<br>\n";
	echo "<h3>Verstecktes Element</h3>\n";
	echo "$vst <br>\n";
	echo "<h3>Datei</h3>\n";
	echo "$dat <br>\n";
	echo "<h3>Auswahlliste</h3>\n";
	echo "Liste: $liste <br>\n";
?>
Wieso funktioniert diese Übergabe nicht auf meinem Rechner, obwohl ich Apache benutze!??

Ich habe das Formular testhalber bei meinem Bruder auf der Site getestet und da funktioniert es! Wieso???
http://www.xentrox.de/test

Kann mir jemand helfen!?

MfG
Euer 18inch

Verfasst: 13.10.2003 22:50
von Acid
Wo testest du es denn? Bei dir auf dem Rechner? Auf dem php installiert is?

Verfasst: 13.10.2003 23:03
von 18inch
Genau!
Ich teste es auf meinem Rechner!
Und php habe ich auch installiert!

Verfasst: 14.10.2003 00:14
von B.A.Monkey
Schau mal in der php.ini in deinem Windows-Verzeichnis, ob "register_globals" auf off steht...

Wenn ja, probiers mal mit

Code: Alles auswählen

echo "Text: " . $_GET["txt"] . "<br>\n";
Entsprechend natürlich bei allen anderen Variablen auch.

Verfasst: 14.10.2003 00:37
von 18inch
DANKE!!!
Endlich funzt es!!
Wieso kann er das andere denn nicht erkennen!!???
Immerhin habe ich den Code aus einem Buch!
Kann ich dem Abhilfe schaffen indem ich register_globals auf on stelle???

ALso trotzdem vielen Dank soweit!

18inch

Verfasst: 14.10.2003 01:07
von 18inch
Es funktioniert alles soweit!
Jedoch die Passage in der Auswertungssite:

Code: Alles auswählen

echo "Kontrollk&auml;stchen : <br>\n"; 
   for($i = 0; $i < 2; $i++) 
      if(isset($kotroll[$i])) 
        echo $kontroll[$i] . "<br>\n"; 
funktioniert nicht!
Ich habe es schon so probiert:

Code: Alles auswählen

echo "Kontrollk&auml;stchen : <br>\n";
	for($i = 0; $i < 2; $i++)
	   if(isset($_GET[$kotroll[$i]]))
	     echo $_GET[$kotroll[$i]] . "<br>\n";
Leider auch ohne Erfolg!

Es wird wahrscheinlich nicht wirklich schwierig sein, jedoch kann ich die Schreibweise von php noch nicht so gut!

MfG 18inch

Verfasst: 14.10.2003 08:41
von Pyramide

Code: Alles auswählen

echo "Kontrollk&auml;stchen : <br>\n"; 
   for($i = 0; $i < 2; $i++) 
      if(isset($_GET['kontroll'][$i])) 
        echo $_GET['kontroll'][$i] . "<br>\n";

Verfasst: 14.10.2003 08:53
von oxpus
register_globals = on kann man zwar als Abhilfe so konfigurieren, stellt aber eine zusätzliche Sicherheitslücke dar. Mit $_GET oder $_POST sollte man auch eher arbeiten, so zumindest die Empfehlung vieler PHP-Lehrbücher...
Und da viele noch mit $HTTP_GER_VARS und $HTTP_POST_VARS arbeiten, haben viele Provider die Variable auch so gelassen, um den Ansturm der Supportanfragen möglichst gering zu halten :wink:

OXPUS

Verfasst: 14.10.2003 10:23
von 18inch
Ich habe den Quelltext geändert!
So wie es bei Pyramide steht, jedoch funktioniert diese Variante auch nicht!
Kann mir jmd weiterhelfen!?

Verfasst: 14.10.2003 12:38
von Pyramide
18inch hat geschrieben:jedoch funktioniert diese Variante auch nicht!
Kannst du das vielleicht etwas genauer ausdrücken?