php parameterübergabe funzt nicht

  • hi,

    ich habe hier ein kleines problem mit einer php parameterübergabe. laut diveresen howtos, sollte das mit einem formular recht einfach gehen, indem man einfach die feldernamen als variablen anspricht. bei mir geht das aber aus einem grund nicht.
    zu testzecken hab ich mal folgende kostellation:
    1) Formularscript (auszug):

    echo "<form action=\"writedata.php\" method=\"POST\" enctype=\"text/plain\">\n";
    echo "Titel: <input name=\"titelfeld\" type=\"text\" size=\"85\" maxlength=\"100\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n";
    echo "Datum: <input name=\"datumfeld\" type=\"text\" size=\"10\" maxlength=\"10\"><br><br>\n";

    echo "<textarea name=\"htmlfeld\" style=\"width:725; height:450\">\n";

    echo "</textarea><br>\n";

    echo "<script language=\"javascript1.2\">\n";
    echo "editor_generate('htmlfeld');\n";
    echo "</script><br>\n";
    echo "<input type=\"submit\" value=\"Speichern\">\n";
    echo "<input type=\"reset\" value=\"Felder Löschen\">\n";
    echo "</center>\n";
    echo "</form>\n";

    2) ausgabe script:

    echo $titelfeld;
    echo $datumfeld;
    echo $htmlfeld;


    eigentlich müsste der das jetz doch ausgeben, tut er aber nicht, hab ich einen denk oder scriptingfehler?

    lg
    Rafar

  • Das Problem duerfte sein, dass mit Version 4.irgendwas das Standardverhalten der sogenannten 'register-globals-variablen' geaendert wurde. Die Funktionalitaet kann naemlich leicht zu Fehlern fuehren, wenn man Variablen (die nicht zum uebergeben gedacht sind) nicht korrekt initialisiert.

    Was tun dagegen:
    Variante 1)
    in /etc/php.ini (kann je nach distribution auch /etc/php/php.ini oder /etc/php4/apache o.ae. sein) die register_globals auf on setzen (apache reload nicht vergessen)

    Variante 2) (die empfohlene Variante, funktioniert immer)
    $_REQUEST[varname] (oder spezieller $_GET[varname] bzw. $_POST[varname]) verwenden.
    Mehr Infos dazu: http://www.php.net/variables.predefined

    Skunk.

  • hi!


    ein kleiner tipp: man muß ned automatisch jede html zeile als php-konstrukt schreiben .. ist ja auch sinnlos, zeit verschwendend und sehr müselig, reine html zeilen mit echo zeilen auszugeben.


    lg

  • Zitat von lerod

    man muß ned automatisch jede html zeile als php-konstrukt schreiben .. ist ja auch sinnlos, zeit verschwendend und sehr müselig, reine html zeilen mit echo zeilen auszugeben.


    Ist aber schon auch Geschmacksfrage. Ich persönlich geb 99% meines HTML-Codes mit echo aus, weil ich dann einfach einen besseren Überblick über den Sourcecode behalten kann. Gscheite Einrückungen werden sonst ein bissl anstrengend.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!