php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.12.2004, 16:34  
Gast
 
Beiträge: n/a
Standard VariablenÜbergabe funktioniert nicht

Mir ist meine Frage peinlich, denn das untenstehende Problem wird wahrscheinlich sehr simpel sein - aber ich komme nicht drauf - und dies noch nicht einmal nach einer Woche:

Ich möchte aus einem Formular eine Variable übergeben und am Bildschirm ausgeben (xxx. html >> xxx.php)

xxx.php:
<?php
echo "<h2>Im folgenden sollten die Variablen ausgegeben werden: </h2>
<hr>";
echo "$feldnam";
?>

rufe ich im Browser xxx.php direkt auf, scheint alles richtig zu laufen:
Zeile 1: formatierter Text
Zeile 2: Unterstrich
Zeile 3: Fehlermeldung (ok, da Variable $feldnam ja nicht vorhanden)

rufe ich über xxx.html >> xxx.php auf, erscheint die folgende , unsinnige Ausgabe:
Zeile 1: Im folgenden sollten die Variablen ausgegeben werden: (unformatiert)
Zeile 3: "; echo "$feldnam"; ?>
Anscheinend erkennt der Browser nun nicht mehr die 'Echo' Befehle?!?

Danke für die Hilfe
Wolf
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.12.2004, 16:36  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 4.651
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Der Browser erkennt sowas auch nicht. Sowas erkennt der PHP- Interpreter im Webserver.

Es klingt, als ob dein Webserver nicht dafür ausgelegt ist, PHP auszuführen.
__________________
Entwickler aus Leidenschaft und ein Zahnrad in einem der größten Java-Projekte der Welt.
mepeisen ist offline  
Alt 30.12.2004, 16:38  
Erfahrener Benutzer
 
Registriert seit: 07.11.2003
Beiträge: 526
Promaetheus
Standard

naja. aber wenn er die seite direkt aufruft hätte es auch schon nicht funktionieren können, nicht erst na :wink: ch erfolgtem hyperlink.

ergänzung: echo '$feldnam'; gibt folgendes aus: $feldnam. also ist das ja keine variable sondern ein string. ;o)

und fehlermeldung sollte auch keine ausgegeben werden, denn wenn die variable LEER ist, erscheint einfach NIX im echo befehl. welche fehlermeldung kommt denn?

und wie hast du die variable eigentlich übergeben?

bissi verwaschen deine informationen.

EDIT: sorry. hatte nicht gesehen dass du anführungszeichen verwendest. mit anführungszeichen ist es selbstverständlich eine variable. ;o)
solltest aber umsteigen. ist parserfreundlicher und die anführungszeichen hier sind komplett sinnlos! ;o)

hier mal das beispiel wie es richtig wäre:

deine html-seite mit formular:
Code:
<html>
<body>
<form method="POST" action="xxx.php">
  <input type="text" name="feldnam">
  <input type="submit" value="Abschicken" name="submit">
</form>
</body>
</html>
deine xxx.php:
PHP-Code:
<?php
// wir nehmen $_POST['feldnam'] da $feldnam nicht funktioniert wenn register_globals auf off ist!
echo 'Feldname, bzw. übergebene Variable ist: '.$_POST['feldnam'];
?>
__________________
mfg Alexander Haim
Promaetheus ist offline  
Alt 30.12.2004, 21:30  
Gast
 
Beiträge: n/a
Standard ratlos wie am Anfang

Danke für die schnellen Antworten - leider konnte ich bisher mein Problem nicht lösen - auch eine Änderung der php.ini (register_globals = On) brachte nichts. Anbei nochmals meine Codes der beiden Dateien (*.html + *.php), da meine bisherigen Ausführungen doch wohl etwas mager waren:
Code:
// Datei form1.html
<html>
<body>
  <form method="POST" action="form1.php">
    <input type="text" name="feldnam">

    <input type="submit" value="Abschicken">
  </form>
</body>
</html>
Code:
// Datei form1.php
<?php
echo "<h2>Im folgenden sollten die Variablen ausgegeben werden: </h2>
<hr>";
echo "$feldnam";
?>

1. Rufe ich die Datei 'form1.php' direkt auf, ist das Ergebnis:

Zeile 1: Text wie codiert Formatiert
Zeile 2: Unterstrich wie codiert
Zeile 3: Fehlermeldung (ok, da Variable nicht deklariert)

2. Rufe ich zuerst die 'form1.html' auf, ist das Ergebnis:

Zeile 1: Text unformatiert ?!?
Zeile 2: Unterstrich wie codiert
Zeile 3: "; echo "$feldnam"; ?> ?!?

Unter 2. erwarte ich jedoch
Zeile 1: Formatierter Text
Zeile 3: Inhalt der zuvor in *.html eingegebenen Variablen

Alles deutet darauf hin, dass die Codierung der beiden Dateien korrekt ist, jedoch irgendeine Einstellung bei der Einrichtung falsch!
Um mich in PHP/MySQL/Apache2 einzuarbeiten, benutze ich 4! Lehrbücher parallel, weil jedes irgendwo Macken hat, die ich mit den Anderen zuerst finden und beheben muss.
Das o.g. Problem tritt jedoch bei ALLEN Musterprogrammen bei mir auf.

Und nun bin ich gespannt...
Wolf
 
Alt 31.12.2004, 15:14  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ich frage mich, was du eigentlich machen willst?
wieso nicht einfach so arbeiten, wie $_POST das möchte?

PHP-Code:
<html>
 <
head>
   <
title>test your form</title>
 </
head>
 <
body>

   <
form action="form.php" method="post">

       <
input type="text" name="testfield" />
       <
input type="hidden" name="sent" value="1" />
       <
input type="submit" name="submit" value="send it" />

   </
form>

 </
body>
</
html
PHP-Code:
<?php

   
if( isset($_POST['sent']) )
   {
       
// maybe you're interested in the content of the superglobal array $_POST?$_COOKIE
       
echo '<pre>';
       
print_r($_POST);
       echo 
'</pre>';

       echo 
'$_POST["testfield"] contains: ' $_POST['testfield'];
   }
   else
   {
       echo 
'Do not open the file directly.';

       
// now you can send the user back to the form.html if you want to
       // use header()
   
}

?>
ich habe mich jetzt ehrlich gesagt nicht damit befasst, was wäre wenn .. weil es für die arbeit zunächst mal unwichtig ist.

wenn es dir hier nur um theoretisches wissen geht, dann solltest du das eventuell mal dazusagen.

grüße ben.
imported_Ben ist offline  
Alt 31.12.2004, 17:42  
Gast
 
Beiträge: n/a
Standard

Hi Ben,
ich verzweifele, auch wenn ich Dein Beispiel codiere ist das Ergebnis das Gleiche;
hier das BildschirmErgebnis:
Zitat:
'; print_r($_POST); echo ''; echo '$_POST["testfield"]contains: '.$POST['testfield'];} else {echo 'Do not open the file directly.';} ?>
Auf dem Link von *.html >> *.php passiert etwas für mich nicht nachvollziehbares. Offensichtlich erkennt er das erste 'echo' nicht mehr.
mfg Wolf
 
Alt 31.12.2004, 17:44  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

lad auf deinen webspace folgendes hoch.
PHP-Code:
<?php

     phpinfo
();

?>
und poste mal den link auf diese datei.

danke.
imported_Ben ist offline  
Alt 31.12.2004, 18:14  
Gast
 
Beiträge: n/a
Standard

Ben, du erkennst bestimmt, ich bin am Anfang.
Verstehe nicht ganz, was Du meinst; habe nun zwei Sachen gemacht:
1. // Datei form1.html
<form method="POST" action="form1.php"> geändert auf
<form method="POST" action="phpinfo.php"> (dort steht Dein Code)
Als Ergebnis kam eine leere weiße Seite-

2. Phpinfo.php im Browser geöffnet.
Das Ergebnis ist ein 8-seitiger Statusbericht. Doch wonach soll ich in diesem suchen?
Sende ihn Dir gerne zu - aber dazu brauche ich eine email-adresse.
Wolf
 
Alt 31.12.2004, 18:21  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

nein. du verlinkst die seite hier. punkt.
imported_Ben ist offline  
Alt 31.12.2004, 19:03  
Gast
 
Beiträge: n/a
Standard

Zitat:
nein. du verlinkst die seite hier. punkt
Danke für Deine bisherige Mühe - Ich glaube, ich muss noch einiges Lernen, bevor ich auf dieser Ebene kommunizieren kann.
mfg Wolf
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Session funktioniert nicht bei session.use_cookies = Off Quagga PHP Tipps 2007 13 13.01.2007 18:27
Lokal funktioniert alles -> auf Server fast nichts PsychoEagle Datenbanken 2 14.08.2006 08:43
schleife funktioniert nicht?! $$$ ThiKool $$$ PHP Tipps 2006 3 18.07.2006 07:52
DB Abfrage nach email funktioniert nicht tinchen Datenbanken 3 15.05.2006 13:20
Hilfe: Zugriff auf Webserver funktioniert nicht mehr Server, Hosting und Workstations 5 06.02.2006 22:34
[Erledigt] Nach Einfügugng der Sessions funktioniert mein Program nicht PHP-Fortgeschrittene 1 02.10.2005 06:13
Upload funktioniert manchmal, manchmal nicht HTML, Usability und Barrierefreiheit 9 29.09.2005 12:32
Kontakrformular funktioniert nur zum Teil PHP Tipps 2005-2 12 18.07.2005 11:24
Php Gästebuch funktioniert nicht auf dem Server PHP Tipps 2005 13 21.04.2005 22:11
geechoter button funktioniert nicht richtig Crypi HTML, Usability und Barrierefreiheit 10 29.12.2004 19:08
Login funktioniert mit MD5 nicht PHP Tipps 2004-2 8 13.12.2004 19:32
Dateien erstellen oder schreiben funktioniert nicht im Web PHP Tipps 2004-2 1 05.12.2004 19:39
[Erledigt] Upload funktioniert nicht... PHP Tipps 2004 10 21.10.2004 16:11
[Erledigt] Datennübertrag funktioniert nicht PHP-Fortgeschrittene 11 15.10.2004 12:10
Header Location funktioniert nicht PHP Tipps 2004 10 12.08.2004 17:11

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
warum erkennt php meine submit nicht mehr, variablenübergabe submi, bildschirmgröße mit $_post übergeben

Alle Zeitangaben in WEZ +1. Es ist jetzt 16:46 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.