[PHP5] " und ' werden immer zu \" und \'

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [PHP5] " und ' werden immer zu \" und \'

    Hallo,

    ich habe ein Problem mit Formularen. Wenn ich in ein Eingabefelder doppelte oder einfache Hochkommas schreibe, gibt es mir immer einen Backslash davor aus.

    Das Problem tritt nur bei meinem XAMP auf, auf meinem Webspace nicht. stripslashes wären daher keine so gute Idee, weil der Webserver dann auch gewollte einfach Backslashes entfernt.

    Der Code sieht so aus:
    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Registrierung</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <meta http-equiv="content-language" content="de"/>
    </head>
    <body>
    <div>
      
    <?php
    echo '<pre>';
    print_r($_POST);
    echo '</pre>';
    ?>
    
    <form action="test.php" method="post">
      <fieldset>
        <label for="vorname">Vorname *</label><br class="y"/>
        <input type="text" name="vorname" id="vorname" value=""/>
      </fieldset>
    
      <button name="submit" title="abschliessen">abschliessen</button>
      
    </form>
    
    </div>
    </body>
    </html>
    Liegt es am Code oder an meinem lokalen Server? Kennt jemand das Problem und hat eine Lösung?
    Gruß,
    Peter

  • #2
    stell magic quotes auf dem lokalen Server richtig ein.

    Kommentar


    • #3
      Die Einstellungen zu Magic Quotes scheinen auf dem Webserver nicht richtig zu sein. Und - ich kann mich nicht nicht erinnern, irgendwann einmal in einem HTML-Formular gewollt den Backslash verwendet zu haben.

      Kommentar


      • #4
        mit wieviel Accounts bist Du denn unterwegs ?

        Kommentar


        • #5
          Sollte "magic_quotes_gpc" auf on oder auf off sein?

          Lokal ist es bei mir auf "on", auf dem Server (all-inkl.com) auf "off".
          Gruß,
          Peter

          Kommentar


          • #6
            Will man portable Programme schreiben, dann muß man
            alle Request Variablen Filtern.

            Das betrifft die folgenden Superglobalen Arrays:
            $_GET
            $_POST
            $_COOKIE

            Bis alles auf PHP6 Umgestellt ist, habe ich am Anfang aller meiner Scripte sowas (per require_once):
            PHP-Code:
             function array_stripslashes(&$var)
            {
                if(
            is_string($var))
                {
                    
            $var stripslashes($var);
                } else
                {
                    if(
            is_array($var))
                        foreach(
            $var AS $key => $value)
                            
            array_stripslashes($var[$key]);
                }
            }

            if(
            get_magic_quotes_gpc())
            {
              
            array_stripslashes($_GET);
              
            array_stripslashes($_POST);
              
            array_stripslashes($_COOKIE);

            Irgendwie ekelig, aber nur so braucht man sich im Rest des Scriptes nicht mehr um den Krams zu kümmern
            Wir werden alle sterben

            Kommentar

            Lädt...
            X