Zum Inhalt springen

Variablenübergabe in PHP


Empfohlene Beiträge

Wie in einem anderen Beitrag bereits erläutert, habe ich die Entwicklungsoberfläche gewechselt. Nun habe ich aber ein weiteres Problem. Ich habe um es unabhängig zu testen ein testscript geschrieben.

Das Problem:

Ich kann die Variable "eingabe" nicht ausgeben lassen, obwohl es laut PHP Spezifikation gehen müsste. Unter Linux hat es auch funktioniert. Vielleicht hat sich bei mir ein elementarer Fehler eingeschlichen.

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<form name="form1" method="post" action="$PHP_SELF">

Eingabe:

<input type="text" name="eingabe" size="50" value="">

<input type="submit" name="senden" value="Abschicken">

</form>

</body>

</html>

<?php

echo $eingabe;

?>

-------------------------------------------------------------------------------

PS: $PHP_SELF funktioniert ebenso wenig

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hier, so gehts:

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">

<?php

echo '<form name="form1" method="post" action='.$PHP_SELF.'>

Eingabe:

<input type="text" name="eingabe" size="50" value="">

<input type="submit" name="senden" value="Abschicken">

</form>

</body>

</html>';

echo $eingabe;

?>

Musst den Formularbereich auch in die PHP "Tags" einbinden.

http://www.firewolve.de/php/test.php

Link zu diesem Kommentar
Auf anderen Seiten teilen

Brrrr..

Das mit zeilenweise HTML Code per echo ausgeben is nit so die saubere Methode..

Machs lieber so:

...

<form name="form1" method="post" action="<?=$PHP_SELF>">

...

Aber ich vermute das Problem liegt eher an einer anderen Stelle. Vermutlich ist unter windows das register_globals auf off gestellt. Du kannst es entweder auf on stellen oder ueber $HTTP_POST_VARS['eingabe'] (bei aelteren PHP Versionen) oder $_POST['eingabe'] drauf zugreifen. Das gleiche mit PHP_SELF.. sollte $PHP_SELF keinen Wert enthalten, nimm $_SERVER['PHP_SELF'].

gruss

Michael

Link zu diesem Kommentar
Auf anderen Seiten teilen

Danke, Danke, Danke

die Zeiten unter Linux zu entwickeln sind vorerst vorbei. Endlich kann ich mit einem vernünftigen Editor unter Windows arbeiten. NEDIT ist nicht schlecht, aber PHPed rockt einfach mehr.

Ich danke nochmal für die Lösung.

Für die die es nicht mitbekommen haben. Wenn Variablen nicht übergeben werden, sollte man als erstes mal nachschauen ob der Wert für register_globals in der PHP.INI auf ON steht.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...