Michael W.: Warum wandelt PHP " in \" um ?

Hallo,

ich habe eine Seite gemacht die aus 3 schritten (3Seiten) besteht.
am anfang gibt man daten in 3 felder ein und diese werden an seite 2 geschickt und dort verarbeitet.
auf seite 2 wird dann ein html code mit bestandteilen der eingegeben daten aus seite 1.
der html code der ensteht ist völlig ohne """" , denn wenn seite 3 ins spiel kommt alle " in " umgewandelt werden.
seite 3 speichert nämlich den generierten html code auf dem server ab und lässt sich auf seite 3 über einen link abrufen.

Das ganze ding heißt "GMX-Autologin-Maker"
http://mitglied.lycos.de/djwoelk3/djwoelk

gibt es eine möglichkeit das " zu verhindern ?
PS.: Der GMX-A.-M. funktioniert nur weil ich alle " raus genommen habe (warum ?)

Danke

  1. Hallo Michael,

    falls ich dich richtig verstehe, willst Du Anführungsstriche ausgeben. Der einfachste weg: " im Quelltext.

    Schöne Grüße
    Thorsten Strausbach (Agentur 4e)

    1. Hallo Michael,

      falls ich dich richtig verstehe, willst Du Anführungsstriche ausgeben. Der einfachste weg: " im Quelltext.

      geht nicht, weil er das " schon auf der seite übersetzt.
      ich glaube da muss ein php befehl her ...

      1. Hi,

        vielleicht formulierst Du Deine Frage nochmal etwas präziser, mir ist jetzt schleierhaft, was genau Du machen willst.

        Besonders:

        ist völlig ohne """" , denn wenn seite 3 ins spiel kommt alle " in " umgewandelt

        verstehe ich nicht.

        Schöne Grüße
        Thorsten Strausbach (Agentur 4e)

        1. ..., denn wenn seite 3 ins spiel kommt werden alle " in " umgewandelt

          stripslashes() wäre die lösung, nur ich weiß nicht wo das hin muss ...

          1. Hallo,

            stripslashes() wäre die lösung, nur ich weiß nicht wo das hin muss ...

            Na, das ist nicht schwer. Mit folgender Syntax ins PHP-Skript:

            StringohneSlashes = stripslashes (StringmitSlashes);

            Schöne Grüße
            Thorsten Strausbach (Agentur 4e)

  2. Moin,

    Herzlichen Glückwunsch, du hast soeben die magic quotes von PHP entdeckt. Das ist ein Sicherheitsfeature das verhindert, dass sich Programmierer selbst in den Fuß schießen. Um die Backslashes vor den Anführungszeichen zu entfernen, musst du blos die Funktion stripslashes() auf die entsprechenden Strings loslassen. Mehr Infos findest du im Archiv und in der PHP-Dokumentation.

    --
    Henryk Plötz
    Grüße aus Berlin

    *** Help Microsoft combat software piracy: Give Linux to a friend today! ***

    1. Herzlichen Glückwunsch, du hast soeben die magic quotes von PHP entdeckt. Das ist ein Sicherheitsfeature das verhindert, dass sich Programmierer selbst in den Fuß schießen.

      Ich habe das Gefühl, dieser Teil von PHP wurde von Microsoft entwickelt. Die Geschichte ist nämlich mehr störend als helfend und erinnert irgendwie an die DAU-Hilfen bzw. Benutzer-Bevormundung in diversen Microsoft-Produkten, auf die so gern hingewiesen wird.

      Um die Backslashes vor den Anführungszeichen zu entfernen, musst du blos die Funktion stripslashes() auf die entsprechenden Strings loslassen.

      Um dieses äußerst nervtötende Feature ganz loszuwerden, kann man alternativ auch magic_quotes_gpc bzw. magic_quotes_runtime in der php.ini oder .htaccess ausschalten (siehe http://www.php.net/manual/de/configuration.php).

      Gruß,
        soenk.e