Server übergibt keine ? Anhänge
Server übergibt keine ? Anhänge
Woran kann es liegen das mein Apache 1.3 keine PHP Anhänge weitergibt.
Von einem Formaular aus gebe ich eine UserID und ein Passwort weiter.
Das geht als Anfrage an das login.inc.php4 File raus.
http://www.domain.de/login.inc.php4?name=***&passwort=***
Aber alles nach dem ? kommt nicht an. Habe ich da was falsch in der httpd.conf ? PHP Scripte werden richtig ausgeführt. Bis auf Sessions die ja die Session ID nach dem ? übergeben.
Besten Dank für einen Tipp
Christian
			
			
									
						
										
						Von einem Formaular aus gebe ich eine UserID und ein Passwort weiter.
Das geht als Anfrage an das login.inc.php4 File raus.
http://www.domain.de/login.inc.php4?name=***&passwort=***
Aber alles nach dem ? kommt nicht an. Habe ich da was falsch in der httpd.conf ? PHP Scripte werden richtig ausgeführt. Bis auf Sessions die ja die Session ID nach dem ? übergeben.
Besten Dank für einen Tipp
Christian
Re: Server übergibt keine ? Anhänge
Was heisst "kommt nicht an"? Werden sie nicht übergeben (angehängt) oder im empfangenden Skript übernommen? Wie sendest Du die Daten, POST oder GET?schani wrote:Das geht als Anfrage an das login.inc.php4 File raus.
http://www.domain.de/login.inc.php4?name=***&passwort=***
Aber alles nach dem ? kommt nicht an. Habe ich da was falsch in der httpd.conf ? PHP Scripte werden richtig ausgeführt. Bis auf Sessions die ja die Session ID nach dem ? übergeben.
Re: Server übergibt keine ? Anhänge
Möglicherweise ist das Script auch einfach nur schlecht programmiert. echo $name wird mit PHP-Versionen >= 4.2 nicht mehr ohne weiteres gehen. Versuch mal $_POST[name].
			
			
									
						
										
						Re: Server übergibt keine ? Anhänge
Ich hatte die Ganze Domain auf einem Server mit PHP 4.2.3 laufen und bin jetzt auf einen Server mit 4.2.2 umgezogen.
> Was heisst "kommt nicht an"? Werden sie nicht übergeben (angehängt) oder im empfangenden Skript übernommen?
Ob sie nicht angehängt werden kann ich nicht sagen. Aber auch wenn ich das annehmende PHP Script so Aufrufe:
login.inc.php4?name=***&passwort=***
und lasse mir dann die Variablen im login.inc.php4 so anzeigen:
print $name;
print $passwort;
wird nichts ausgegeben.
>echo $name wird mit PHP-Versionen >= 4.2 nicht mehr ohne weiteres gehen
Warum sollte das nicht gehen ? Habs gerade nochmal überprüft, auf dem alten Server unter PHP 4.2.3 geht das schon.
Das Formular funktioniert.
Es kann eigentlich nur an einer Einstellung am neuen Server liegen.
Christian
			
			
													> Was heisst "kommt nicht an"? Werden sie nicht übergeben (angehängt) oder im empfangenden Skript übernommen?
Ob sie nicht angehängt werden kann ich nicht sagen. Aber auch wenn ich das annehmende PHP Script so Aufrufe:
login.inc.php4?name=***&passwort=***
und lasse mir dann die Variablen im login.inc.php4 so anzeigen:
print $name;
print $passwort;
wird nichts ausgegeben.
>echo $name wird mit PHP-Versionen >= 4.2 nicht mehr ohne weiteres gehen
Warum sollte das nicht gehen ? Habs gerade nochmal überprüft, auf dem alten Server unter PHP 4.2.3 geht das schon.
Das Formular funktioniert.
Es kann eigentlich nur an einer Einstellung am neuen Server liegen.
Christian
					Last edited by schani on 2003-06-03 16:05, edited 1 time in total.
									
			
						
										
						Re: Server übergibt keine ? Anhänge
Hi,
die Einstellung "register_globals" bestimmt das. Ist das auf "on" kannst du mit $name und $passwort arbeiten - was aber nicht mehr empfohlen wird und AFAIK eigentlich auch standardmässig auf "off" steht.
Daher: alle Variablen, die über URL gereicht werden mit $_GET['variable'] ansprechen und Daten aus einem Formular je nach method="POST" oder method="GET" entsprechend mit $_POST['variable'] bzw $_GET['variable'] aufrufen.
so long
static
			
			
									
						
										
						die Einstellung "register_globals" bestimmt das. Ist das auf "on" kannst du mit $name und $passwort arbeiten - was aber nicht mehr empfohlen wird und AFAIK eigentlich auch standardmässig auf "off" steht.
Daher: alle Variablen, die über URL gereicht werden mit $_GET['variable'] ansprechen und Daten aus einem Formular je nach method="POST" oder method="GET" entsprechend mit $_POST['variable'] bzw $_GET['variable'] aufrufen.
so long
static
Re: Server übergibt keine ? Anhänge
Im httpd.conf oder ?
			
			
									
						
										
						Re: Server übergibt keine ? Anhänge
nee, in der php.ini
Aber naja - ich würde eher das Script umschreiben...
so long
static
			
			
									
						
										
						Aber naja - ich würde eher das Script umschreiben...
so long
static
Re: Server übergibt keine ? Anhänge
Du tust Dir nen Gefallen, wenn Du das Script umschreibst und nicht die php.ini änderst... weil register_globals auf on ist bei schlechtem Programmierstiel eine potentielle Sicherheitslücke... und da ausserdem immer mehr Server PHP aktualisieren, wirst Du über Kurz oder Lang Dein Script sonst auf keinem anderen Server mehr zum Laufen bringen...
			
			
									
						
										
						Re: Server übergibt keine ? Anhänge
Da sie in der URL übergeben werden: GET.mstuebner wrote: Wie sendest Du die Daten, POST oder GET?
Du mußt nicht das ganze Script umschreiben. Einfach am Anfang ein
Code: Select all
$name = $_GET['name'];
$passwort = $_GET['passwort'];
[TOM]