Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Was ist den da los ?

  1. #1
    Gast
    Gast

    Standard Was ist den da los ?

    Hallo Leute,

    ich habe z.Z ein wenig Zeit, so das ich mir dachte setzt du dich mal ans openbook von gc für php.

    Nun bin ich gerade bei bearbeitung von formularen und er zickt rum.

    Ich habe den Code sogar 1:1 aus dem Beispiel kopiert also:

    test.html
    <html>
    <body>
    Bitte tragen Sie zwei Zahlen ein und senden Sie das Formular ab.

    <form action = "send.php" method = "post">
    Wert 1: <input name = "w1">


    Wert 2: <input name = "w2">


    <input type = "submit">
    <input type = "reset">
    </form>
    </body>
    </html>
    send.php

    <html>
    <body>
    <?php
    $erg = $w1 + $w2;
    echo "Die Summe von $w1 und $w2 ist $erg";
    ?>
    </body>
    </html>
    starte ich nun test.html und gebe 2 Zahlen ein krieg ich wenn ich es abschicke, folgende Meldung:

    "Die Summe von und ist 0"

    Woran liegt das der Code ist doch komplett kopiert.

    Ich benutze es local mit xampp.

    also rufe ich die Seiten mit
    http://localhost/test/datei.html/php
    auf.

    Jemmand ne idee ?
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Forum Guru
    Registriert seit
    13.01.2005
    Ort
    Schweiz
    Beiträge
    5.240
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    bist du sicher dass php auf deinem xampp läuft?
    wenn nicht dann ist ja klar warum, wenn schon - probiers mal so (send.php):

    Code:
    <html>
    <body>
    <?php
    $erg = $_POST&#91;'w1'&#93; + $_POST&#91;'w2'&#93;;
    echo "Die Summe von $w1 und $w2 ist ".$erg;
    ?>
    </body>
    </html>

  3. #3
    Gast
    Gast

    Standard

    Hallo,

    also wenn ich dein Code einfüge erhalte ich wenn ich in die 2 Felder "5" eintrag folgendes von der send.php

    Die Summe von und ist 10

    Also berechnet er mir nur das Ergebniss, zeigt aber nicht die eingetragenen Zeichen ein.

    Aber das mit dem $_POST ist doch auch eigentlihc garnicht notwendig oder woran liegt das ?

    Danke

  4. #4
    Kaiser(in)
    Registriert seit
    09.12.2005
    Alter
    29
    Beiträge
    2.496
    Danke
    1
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    das ist notwendig, wenn php so eingestellt ist, dass rgister_globals OFF ist

    also musst du einfach jedes W1 und W2 etc durch $_POST['w1'] ersetzen

    echo "Die Summe von ".$_POST['w1']." und ".$_POST['w2']." ist".$_POST['w1'] + $_POST['w2'];
    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  5. #5
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Moin!

    Einfacher geht es so:

    Code:
    <html>
    <body>
    <?php
    extract&#40;$_POST&#41;;
    $erg = $w1 + $w2;
    echo "Die Summe von $w1 und $w2 ist $erg";
    ?>
    </body>
    </html>
    G.a.d.M.

    Ronald

  6. #6
    Gast
    Gast

    Standard

    Hallo, danke für eure Antworten,

    wie kann ich den diese
    Register Globals auf on setzen
    (wie gesagt benutze xampp).

    Danke schonmal

  7. #7
    Gast
    Gast

    Standard

    Habs jetzt schon gefunden danke !

  8. #8
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Benutze lieber die extract-Methode, denn auf den meisten Webservern sind die Gloabals aus Sicherheitsgründen auf "off" (Schutz vor Hackern) und dann funktioniert dein Script online plötzlich nicht mehr.

    http://www.heddesheimer.de/blog/inde...2006/01/25/p94

    Extract funktioniert immer.

    Ansonsten mußt du es in der php.ini einstellen.

    G.a.d.M.

    Ronald

  9. #9
    Forum Guru
    Registriert seit
    13.01.2005
    Ort
    Schweiz
    Beiträge
    5.240
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    ronald - also kann man mit extract($_POST) dirket auf die werte zugreifen durch $inputname ?
    gibts da was das man noch beachten sollte? sicherheitsmässig?
    würde es sinn machen das direkt in die global.php oder so zu schreiben?

    danke - phore.

  10. #10
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Das 'extract($_POST)' kannst du bedenkenlos einsetzen, da es nur innerhalb des Scriptes selbst wirkt.
    Es wandelt die per Post übergebenen Daten zu Variablen um, die das Script (und nur das) dann weiterverarbeiten kann.

    Wenn aus deinem Eingabeformular z.B. ein
    Code:
    <input type="text" name="Vorname">
    kommt und du in das Feld "Klaus" eingegeben hast, dann kannst du im empfangenden PHP-Script entweder mit $HTTP_POST_VARS auf den Wert zugreifen, oder etwas kürzer mit $_POST.
    Alle 3 Varianten liefern das gleiche Ergebnis:
    Code:
    <?php
    echo "1. ".$HTTP_POST_VARS&#91;"Vorname"&#93;."
    ";
    echo "2. ".$_POST&#91;"Vorname"&#93;."
    ";
    extract&#40;$_POST&#41;;
    echo "3. $Vorname";
    ?>
    Probiere es doch einfach mal aus.

    G.a.d.M.

    Ronald

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •