Variablen werden nicht übergeben, warum??
Ingo Lindemann
- php
0 Jan L.0 Ingo Lindemann0 Jan L.0 Ingo Lindemann0 Elmar0 Ingo Lindemann0 Elmar
0 Sven Rautenberg
0 Benedikt Hermann
Hallo,
folgendes Problem:
Habe meinen IIS um PHP erweitert, jetzt läuft die Seite fast, es ist nur so das die Variablen nicht über die Adresszeile übergeben werden. Warum?
Vorher lief alles wunderbar mit Apache.
PS:
Wie richte ich SQL im IIS ein?
MfG
Ingo Lindemann
Hallo,
Habe meinen IIS um PHP erweitert, jetzt läuft die Seite fast, es ist nur so das die Variablen nicht über die Adresszeile übergeben werden. Warum?
Ich will mal raten. Die an die URL angehängten Prameter stehen in aktuellen PHP-Versionen einfach nicht mehr als gleichnamige Variablen im PHP-Script zur Verfügung.
Wenn du ein Script z.B. mit http://xyz.tld/meinscript.php?test=irgendwas aufrufst, hast du in diesem Script nicht automatisch eine Variable $test mit dem Wert "irgendwas".
Versuch mal zuerst $test = $_GET["test"].
Gruß, Jan L.
Hallo,
Habe meinen IIS um PHP erweitert, jetzt läuft die Seite fast, es ist nur so das die Variablen nicht über die Adresszeile übergeben werden. Warum?
Ich will mal raten. Die an die URL angehängten Prameter stehen in aktuellen PHP-Versionen einfach nicht mehr als gleichnamige Variablen im PHP-Script zur Verfügung.
Wenn du ein Script z.B. mit http://xyz.tld/meinscript.php?test=irgendwas aufrufst, hast du in diesem Script nicht automatisch eine Variable $test mit dem Wert "irgendwas".
Versuch mal zuerst $test = $_GET["test"].
Gruß, Jan L.
Alles klar, hab ich gemacht, jetzt geht es ein wenig besser, aber folgende Fehler treten jetzt auf:
Undifined Index...
und
Use of undefined constant europa - assumed'europa'.
und nun?
Hallo,
Alles klar, hab ich gemacht, jetzt geht es ein wenig besser, aber folgende Fehler treten jetzt auf:
ist ja schon mal was...
Undifined Index...
und
Use of undefined constant europa - assumed'europa'.
ohne ein wenig Quelltext läßt sich da jetzt schwer was sagen. Hat das Script mit einer älteren PHP-Version funktioniert?
Gruß, Jan
Hallo,
Alles klar, hab ich gemacht, jetzt geht es ein wenig besser, aber folgende Fehler treten jetzt auf:
ist ja schon mal was...
Undifined Index...
und
Use of undefined constant europa - assumed'europa'.
ohne ein wenig Quelltext läßt sich da jetzt schwer was sagen. Hat das Script mit einer älteren PHP-Version funktioniert?
Gruß, Jan
ich hatte es auf meinem Rechner unter WAMP laufen, alles wunderbar.
Jetzt habe ich es auf den Intranet-Server gebracht und nur Probleme.
Quelltext:
<?php
/*$test=$_GET["test"];
$view=$_GET["view"];
$marke=$_GET["marke"];
$map=$_GET["map"];*/
if (!$map && !$view && !$marke)
{
echo "<table width=100% height=100% bgcolor=white>
<tr>
<td align=center>
<IMG SRC=Graphics/welt2.gif BORDER=0 USEMAP=#welt2_Map
width=860 height=607>
</td>
</tr>
</table>
<MAP NAME=welt2_Map>
<AREA SHAPE=rect ALT=Europa COORDS=346,216,511,337
HREF=test4c.php?map=europa>
<AREA SHAPE=rect ALT=Konzernweit COORDS=349,567,494,589
HREF=test4c.php?view=all>
<AREA SHAPE=poly ALT='VW Südamerika' COORDS='190,405,
237,374, 262,376, 332,421, 300,482, 254,522, 251,575,
233,574, 217,556, 229,453' HREF=test4c.php?map=sa>
<AREA SHAPE=circle ALT=Uitenhage COORDS=458,486,15
HREF=test4c.php?view=Uitenhage>
</MAP>";
Wo soll man da anfangen? Auskommentierte Varibalen, die dann aber abgrfagt werden... nicht geschlossene PHP tags... so lief das script bestimmt nie...
Elmar
Undifined Index...
und
Use of undefined constant europa - assumed'europa'.
Quelltext:
<?php
/*$test=$_GET["test"];
$view=$_GET["view"];
$marke=$_GET["marke"];
$map=$_GET["map"];*/
if (!$map && !$view && !$marke)
{
echo "<table width=100% height=100% bgcolor=white>
<tr>
<td align=center>
<IMG SRC=Graphics/welt2.gif BORDER=0 USEMAP=#welt2_Map
width=860 height=607>
</td>
</tr>
</table>
<MAP NAME=welt2_Map>
<AREA SHAPE=rect ALT=Europa COORDS=346,216,511,337
HREF=test4c.php?map=europa>
<AREA SHAPE=rect ALT=Konzernweit COORDS=349,567,494,589
HREF=test4c.php?view=all>
<AREA SHAPE=poly ALT='VW Südamerika' COORDS='190,405,
237,374, 262,376, 332,421, 300,482, 254,522, 251,575,
233,574, 217,556, 229,453' HREF=test4c.php?map=sa>
<AREA SHAPE=circle ALT=Uitenhage COORDS=458,486,15
HREF=test4c.php?view=Uitenhage>
</MAP>";
ist ja auch nur ein ausschnitt von den knapp 800 zeilen!
ist ja auch nur ein ausschnitt von den knapp 800 zeilen!
Kein Thema! Trotzdem liegen die Fehler in vorangegangener Aussage. Von dem in Zeile 799 abgeschlossenen php-tag vielleicht abgesehen. Kannst Du überhaupt sichergehen, dass die Post-Variablen da sind? Ansonsten vielleicht erstmal prüfen, ob die Übergabevars gesetzt und nicht leer sind bzw. nach Gusto auch noch auf sinnvollen Inhalt prüfen.
Undef. index kommt auf jeden Fall von undefinierten Vars und die Konstantensache, weil er versucht z.B. europa zu lesen, obwohl du $europa brauchst bzw. weil er versucht wegen fehlenden Abschlusstag HTML zu parsen.
Bis denne,
Elmar
Aloha!
Solche riesigen HTML-Ausgaben lassen sich viel besser erzeugen, indem man den PHP-Modus verläßt, dann pures HTML schreibt und schließlich den PHP-Modus wieder aktiviert. Dann kann man nämlich auch ordentlich Anführungszeichen um die Attributwerte setzen - definitiv notwendig bei XHTML und XML, aber auch bei HTML sehr fehlervermeidend:
»»if (!$map && !$view && !$marke)
{ ?>
<table width="100%" height="100%" bgcolor="white">
<tr>
<td align="center">
<IMG SRC="Graphics/welt2.gif" BORDER="0" USEMAP="#welt2_Map" width="860" height="607">
</td>
</tr>
</table>
<MAP NAME="welt2_Map">
<AREA SHAPE="rect" ALT="Europa" COORDS="346,216,511,337" HREF="test4c.php?map=europa">
<AREA SHAPE="rect" ALT="Konzernweit" COORDS="349,567,494,589" HREF="test4c.php?view=all">
<AREA SHAPE="poly" ALT="VW Südamerika"COORDS="190,405, 237,374, 262,376, 332,421, 300,482, 254,522, 251,575, 233,574, 217,556, 229,453" HREF="test4c.php?map=sa">
<AREA SHAPE="circle" ALT="Uitenhage" COORDS="458,486,15" HREF="test4c.php?view=Uitenhage">
</MAP>
<?php } // IF schließen
else.... //Hier geht PHP weiter.
Guter Programmierstil ist es, wenn in der PHP-Datei ganz oben ein PHP-Block mit vorbereitendem Programmcode ist (also Datenbankabfragen, Includes etc.), und darunter dann ein HTML-Block kommt, in dem nur relativ kleine PHP-Blöcke enthalten sind, um die Seitenausgabe zu erzeugen. Denn sonst verliert man bei solch einem Durcheinander von PHP und HTML gerne und sehr leicht die Übersicht.
- Sven Rautenberg
Versuch mal zuerst $test = $_GET["test"].
Hallo,
Du kannst auch automatisch alle Schlüssel des Arrays zu Variablen umwandeln und der Wert wird automatisch zugewisen:
if (!empty($HTTP_GET_VARS)) {
extract($HTTP_GET_VARS);
}