Include () einer variable

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

  • Include () einer variable

    Hallo,

    folgendes Problem (falls eine vgl. Frage im Forum bereits gestellt wurde tut es mir leid, habe aber leider mit der Suchfunktion nichts finden können) :


    Ich habe in einer sql tabelle den inhalt für eine jeweilige Seite, d.h. dass in der SQL tabelle in einem feld der html code der Seite enthalten ist, dieser html code enthält, z.T. auch php code.

    Diesen html(+php) code der also aus der sql tabelle abgefragt worden ist nun in der $content. Nun will ich also den inhalt der $content, ausführen, sowie beim include befehl, nur dass der code nicht in einem *.php file ist sondern in der $content.

    Dazu habe ich bis jetzt

    PHP-Code:
    eval("?>".$content); 
    benutzt. Nun habe ich aber gemerkt, dass, sobald in der $content ein ' ´(single qoute) im text vorkommt, das script es nicht mehr verarbeiten kann. Ein escapen des Anführungszeichens ( /' ) schafft auch keine Abhilfe.

    Ich steh leider auf dem Schlauch vermute und hoffe das es eine ziemlich simple Lösung dazu gibt.

    Dank im Vorraus

    Robert G.

  • #2
    escaped wird anders rum, desweiteren ist es gar nicht schön PHP -Code in der Datenbank zu speichern und diesen dann auch noch mit eval auszuführen..

    Kommentar


    • #3
      Original geschrieben von krel
      escaped wird anders rum, desweiteren ist es gar nicht schön PHP -Code in der Datenbank zu speichern und diesen dann auch noch mit eval auszuführen..
      Was wäre denn stylistisch schöner?

      Kommentar


      • #4
        Original geschrieben von krel
        escaped wird anders rum, desweiteren ist es gar nicht schön PHP -Code in der Datenbank zu speichern und diesen dann auch noch mit eval auszuführen..
        Was wäre denn stilistisch schöner?

        Kommentar


        • #5
          Original geschrieben von RobGod
          Was wäre denn stilistisch schöner?
          Es nicht zu machen
          Das hat weniger mit Stil zu tun als mit enormen Sicherheitsbedenken.

          Kommentar


          • #6
            Original geschrieben von pekka
            Es nicht zu machen
            Das hat weniger mit Stil zu tun als mit enormen Sicherheitsbedenken.
            In sofern, dass jemand 'bösartigen' code in der $content ausführen könnte?

            Kommentar


            • #7
              Ja.

              Kommentar


              • #8
                Original geschrieben von RobGod
                In sofern, dass jemand 'bösartigen' code in der $content ausführen könnte?
                Da hab ich eigentlich keine bedenken, da ich der einzige bin der code einfügt...

                Kommentar


                • #9
                  Original geschrieben von RobGod
                  Da hab ich eigentlich keine bedenken, da ich der einzige bin der code einfügt...
                  Mußt du wissen... Es öffnet eben einen zweiten Kanal, um Code einzufügen, und sicherheitstechnisch ist das sehr unschön.

                  Kommentar


                  • #10
                    Original geschrieben von pekka
                    Mußt du wissen... Es öffnet eben einen zweiten Kanal, um Code einzufügen, und sicherheitstechnisch ist das sehr unschön.
                    Das ist mir schon klar, aber da es nicht für eine multi-user umgebung gedacht ist, denk ich mal das es da keine Probleme geben sollte.

                    Kommentar


                    • #11
                      Kann denn jemand zur eigentlichen Frage was sinnvolles beisteuern?

                      Thanks in advance

                      Kommentar


                      • #12
                        Was kommt denn für eine Fehlermeldung?

                        Kommentar


                        • #13
                          You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 's
                          Also genau dort wo das Anführungszeichen ist.

                          Ich hatte schon an htmlspecialchars() gedacht, aber das würde ja auch die Anführungszeichen im php source code mitkonvertieren.

                          Kommentar


                          • #14
                            Da wird irgendwo eine SQL-Anweisung ausgeführt. Dort liegt dein Problem. Finde raus wo das passiert und warum das includete dort einfließt.

                            Kommentar


                            • #15
                              Original geschrieben von RobGod
                              Also genau dort wo das Anführungszeichen ist.
                              gib mal die Abfrage aus, dann wirst du schon sehen, woran es liegt.

                              Kommentar

                              Lädt...
                              X