broetchen@gera: Wertübergabe die nicht übergibt!

Hallo!

Ich weiß nicht ob mir jemand hier den letzten Gedankenschups geben könnte an was das liegen könnte, das in den folgenden Source Code keine Wertübergabe stattfindet:

index.html
-----------------------------
<html><head><title></title></head>
<p>Bitte geben sie die gewünschte Nummer an: </p>
<form action="weiter1.php" method=post">
<kbd>Bestätigung</kbd>
<input type="text" name="aus" size="2" maxlength="1">
<br>
<input value="OK" type="submit">
</form>
</body></html>
-----------------------------

weiter1.php
---------------------------
<?php
echo $aus. " " . $aus ;
echo " Auswahl hat den Wert $aus   auf sich genommen " ;
echo ("<br>");
print ($aus. " ");
?>
---------------------------

Ich arbeite mit Netscape als auch mit Mozilla! Liegt es vielleicht an den Browsern?

Großen Dank
MFG Thomas

  1. Hallo,

    liegt wohl an deinen php-einstellungen, das du den wert noch explizit holen musst...(register globals)

    $aus = $http_post_vars["aus"];

    echo $aus;

    Odium

  2. Hallo,

    weiter1.php

    <?php

    $aus = $_POST["aus"];

    echo $aus. " " . $aus ;
    echo " Auswahl hat den Wert $aus   auf sich genommen " ;
    echo ("<br>");
    print ($aus. " ");
    ?>

    Ich arbeite mit Netscape als auch mit Mozilla! Liegt es vielleicht an den Browsern?

    Nein. Es liegt an den Änderungen in neueren PHP-Versionen.

    http://www.php.net/manual/en/language.variables.predefined.php

    Dort mal gleich das 'Warning' und den Abschnitt 'PHP Superglobals' lesen.

    Gruß, Jan

    1. Hallo,

      weiter1.php

      <?php
      $aus = $_POST["aus"];

      Dat will net machen da kommt trotzdem keine Ausgabe!

      echo $aus. " " . $aus ;
      echo " Auswahl hat den Wert $aus   auf sich genommen " ;
      echo ("<br>");
      print ($aus. " ");
      ?>

      Ich arbeite mit Netscape als auch mit Mozilla! Liegt es vielleicht an den Browsern?

      Nein. Es liegt an den Änderungen in neueren PHP-Versionen.

      http://www.php.net/manual/en/language.variables.predefined.php

      Dort mal gleich das 'Warning' und den Abschnitt 'PHP Superglobals' lesen.

      Gruß, Jan

  3. Moin

    Ich weiß nicht ob mir jemand hier den letzten Gedankenschups geben könnte an was das liegen könnte, das in den folgenden Source Code keine Wertübergabe stattfindet:

    Dein Problem heißt register_globals und steht in der php.ini.
    Alternativ kannst Du's ja auch mal mit $_POST["aus"] versuchen ;-)

    Ciao,

    Harry

  4. Hallo!

    Ich weiß nicht ob mir jemand hier den letzten Gedankenschups geben könnte an was das liegen könnte, das in den folgenden Source Code keine Wertübergabe stattfindet:

    guck mal ob in $HTTP_POST_VARS["aus"] was drin steht, wenn ja liegt es an deiner PHP-Version

    Ich arbeite mit Netscape als auch mit Mozilla! Liegt es vielleicht an den Browsern?

    nein

    Großen Dank
    MFG Thomas

    romy

  5. Hallo!

    Ich weiß nicht ob mir jemand hier den letzten Gedankenschups geben könnte an was das liegen könnte, das in den folgenden Source Code keine Wertübergabe stattfindet:

    index.html

    <html><head><title></title></head>
    <p>Bitte geben sie die gewünschte Nummer an: </p>
    <form action="weiter1.php" method=post">
    <kbd>Bestätigung</kbd>
    <input type="text" name="aus" size="2" maxlength="1">
    <br>
    <input value="OK" type="submit">
    </form>
    </body></html>

    weiter1.php

    <?php
    echo $aus. " " . $aus ;
    echo " Auswahl hat den Wert $aus   auf sich genommen " ;
    echo ("<br>");
    print ($aus. " ");
    ?>

    Ich arbeite mit Netscape als auch mit Mozilla! Liegt es vielleicht an den Browsern?

    Großen Dank
    MFG Thomas

    ALSO WAS SOLL ICH NUN IN DER PHP.INI EINSTELLEN?
    GLOBAL ENVIROMENTS AUF ON

    UND SOLL ICH DAS NUN ÜBER DIE STANDARD PHP BEFEHLE NUTZEN WIE ZUM BEISPIEL $_POST, WOBEI DAS AUCH NET GEHT?

    hILFE *seufz*

    1. Hallo!

      Großen Dank
      MFG Thomas

      ALSO WAS SOLL ICH NUN IN DER PHP.INI EINSTELLEN?
      GLOBAL ENVIROMENTS AUF ON

      UND SOLL ICH DAS NUN ÜBER DIE STANDARD PHP BEFEHLE NUTZEN WIE ZUM BEISPIEL $_POST, WOBEI DAS AUCH NET GEHT?

      warum schreist du hier so rum!!!???
      das hilft dir auch nicht weiter
      romy

      hILFE *seufz*

      1. Hallo!

        Großen Dank
        MFG Thomas

        ALSO WAS SOLL ICH NUN IN DER PHP.INI EINSTELLEN?
        GLOBAL ENVIROMENTS AUF ON

        UND SOLL ICH DAS NUN ÜBER DIE STANDARD PHP BEFEHLE NUTZEN WIE ZUM BEISPIEL $_POST, WOBEI DAS AUCH NET GEHT?

        warum schreist du hier so rum!!!???
        das hilft dir auch nicht weiter
        romy

        hILFE *seufz*

        *schnief* verzweiflungstat

    2. Hallo,

      ALSO WAS SOLL ICH NUN IN DER PHP.INI EINSTELLEN?
      GLOBAL ENVIROMENTS AUF ON

      Warum schreist du so rum?

      Du kannst 'register_globals' auf 'on' stellen (schlechte Idee), dann funtioniert alles wie gewohnt.
      Du solltest (besser) z.B. $HTTP_POST_VARS[] (ältere PHP-Versionen) bzw. $_POST[] (neuere Versionen) benutzen (Doch das funktioniert, sicher ;-) ). Zu dem Thema dürftest du im Archiv eine ganze Menge Informationon finden, da das Problem hier dauernd diskutiert wird.

      Gruß, Jan

      1. Hallo,

        ALSO WAS SOLL ICH NUN IN DER PHP.INI EINSTELLEN?
        GLOBAL ENVIROMENTS AUF ON

        Warum schreist du so rum?

        Du kannst 'register_globals' auf 'on' stellen (schlechte Idee), dann funtioniert alles wie gewohnt.
        Du solltest (besser) z.B. $HTTP_POST_VARS[] (ältere PHP-Versionen) bzw. $_POST[] (neuere Versionen) benutzen (Doch das funktioniert, sicher ;-) ). Zu dem Thema dürftest du im Archiv eine ganze Menge Informationon finden, da das Problem hier dauernd diskutiert wird.

        Gruß, Jan

        sorry
        thx

  6. habe es nun mit der $post probiert und noch weiter in den manuals geschnüffelt ... nix was mir was sagen könnte!

    $\_POST["aus"];  
      
    $aus $\_POST["aus"];  
    

    welcher Befehl ist nun am geeignetesten, da bei beiden keine rückantwort kommt!

    Hallo!

    Ich weiß nicht ob mir jemand hier den letzten Gedankenschups geben könnte an was das liegen könnte, das in den folgenden Source Code keine Wertübergabe stattfindet:

    index.html

    <html><head><title></title></head>
    <p>Bitte geben sie die gewünschte Nummer an: </p>
    <form action="weiter1.php" method=post">
    <kbd>Bestätigung</kbd>
    <input type="text" name="aus" size="2" maxlength="1">
    <br>
    <input value="OK" type="submit">
    </form>
    </body></html>

    weiter1.php

    <?php
    echo $aus. " " . $aus ;
    echo " Auswahl hat den Wert $aus   auf sich genommen " ;
    echo ("<br>");
    print ($aus. " ");
    ?>

    Ich arbeite mit Netscape als auch mit Mozilla! Liegt es vielleicht an den Browsern?

    Großen Dank
    MFG Thomas

    1. Hallo,

      es gibt keinen "besseren" befehl...

      $http_post_vars nimmt man wenn du auf daten eines vorhergehenden formulars zugreifen willst (deine vergebenen feldnamen testen <input type="text" name="aus">sollte da stehen...)
      $http_get_vars nimmt man bei daten im querystring

      $_post bzw. &_get sind die verkürzten schreibweisen in php 4

      $variable = $http_post_vars["derfeldnameimvorhergehendenformular"];
      $variable = $http_get_vars["derparamternameimquerystring"];

      unten hast du noch ein = vergessen, da müßte ja zumindest eine fehlermeldung kommen...speicherst du die dateien vielleicht falsch ab?(ftp)

      habe es nun mit der $post probiert und noch weiter in den manuals geschnüffelt ... nix was mir was sagen könnte!

      $\_POST["aus"];  
      

      $aus $_POST["aus"];

      welcher Befehl ist nun am geeignetesten, da bei beiden keine rückantwort kommt!  
      

      Odium

      1. Hallo,

        $http_post_vars nimmt man wenn du auf daten eines vorhergehenden formulars zugreifen willst (deine vergebenen feldnamen testen <input type="text" name="aus">sollte da stehen...)
        $http_get_vars nimmt man bei daten im querystring

        $http_get_vars gibt es nicht, $HTTP_GET_VARS schon ;-)

        $_post bzw. &_get sind die verkürzten schreibweisen in php 4

        Es sind nicht nur verkürzte Schreibweisen. Die neuen Arrays ($_GET,...) sind, im Gegensatz zu den alten ($HTTP_POST_VARS), 'superglobal' und stehen damit auch in Unterfunktionen direkt zur Verfügung.

        Gruß, Jan

    2. habe es nun mit der $post probiert und noch weiter in den manuals geschnüffelt ... nix was mir was sagen könnte!

      $\_POST["aus"];  
      

      $aus $_POST["aus"];

      welcher Befehl ist nun am geeignetesten, da bei beiden keine rückantwort kommt!  
      

      $_POST[] ist kein Befehl sondern ein Array.

      Lies doch mal: http://www.php.net/manual/en/language.variables.predefined.php !

      In diesem Array sind alle Werte gespeichert, die dem Script per http post übergeben wurden.

      Sowas wie echo($_POST["aus"]); kannst du aber nicht benutzen.
      $aus = $_POST["aus"];
      echo($aus);

      Falls das bei deiner PHP Version noch nicht funktioniert versuche:
      $aus = $HTTP_POST_VARS["aus"];
      echo($aus);

      Gruß, Jan

    3. Moin!

      welcher Befehl ist nun am geeignetesten, da bei beiden keine rückantwort kommt!

      Vermutlich hast du ein anderes Problem als "nur" das mit $_POST.

      Um zu sehen, welche Werte der Browser an das Skript übergibt (und welche vom Server bereitstehen), gibt an passender Stelle (vielleicht ganz oben im Skript) folgenden Befehl ein:

      phpinfo(INFO_VARIABLES);

      (Großschreibung ist entscheidend)

      Dann erhälst du eine Tabelle, die dir genau auflistet, was in den Variablen drinsteht, die mit Benutzerdaten gefüllt sind. Wenn dort der übergebene Wert nicht drinsteht, hast du ein Problem.

      Wenn er drinsteht (rechte Spalte), steht links daneben, in welcher Variablen er gespeichert ist. Die nimmst du dann. Vermutlich hast du nur irgendeinen Tippfehler eingebaut.

      - Sven Rautenberg

  7. Hi!
    Also: Machts es nicht komplizierter als es ist:
    Es ist wohl nur ein kleiner Syntaxfehler bei <form ... method=post">
    (Wenn das der korrekte Quelltext aus deiner Datei ist)
    ENTWEDER
    <form ... method="post">
    ODER
    <form ... method=post>
    ABER KEIN GEMISCH ;-)
    HTML hat zwar so gut wie keine Syntax aber eben doch ein bischen!
    greets, andi

    index.html

    <html><head><title></title></head>
    <p>Bitte geben sie die gewünschte Nummer an: </p>
    <form action="weiter1.php" method=post">
    <kbd>Bestätigung</kbd>
    <input type="text" name="aus" size="2" maxlength="1">
    <br>
    <input value="OK" type="submit">
    </form>
    </body></html>

    weiter1.php

    <?php
    echo $aus. " " . $aus ;
    echo " Auswahl hat den Wert $aus   auf sich genommen " ;
    echo ("<br>");
    print ($aus. " ");
    ?>

    Ich arbeite mit Netscape als auch mit Mozilla! Liegt es vielleicht an den Browsern?

    Großen Dank
    MFG Thomas