PHP Code wird nicht interprätiert...

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

  • PHP Code wird nicht interprätiert...

    Hallo nochmal,

    habe eine kleines Script geschrieben, welches Text bzw. auch html-tags etc. in einer mySQL DB speichert.

    Nun lasse ich den Text einfach so ausgeben: echo $array['text']

    Nun ist es so, das ich in diesem Text auch noch PHP Code habe. Wenn der Text ausgegeben wird wird der Code nicht interprätiert und steht einfach dann z.B. so im Quellcode der Seite:

    PHP-Code:
    <? news_pic("Concept_Art", 1); echo "Hello, Wolrd!";?>
    Warum? Kann man da was machen?
    [SIZE=1]Projekte:
    wartower.de | planetd2.de

  • #2
    eval() ist dein freund.

    aber am rande ... eval() == evil().
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Funzt net.

      <? eval(news_pic("Concept_Art", 1)); echo "Hello, Wolrd!";?>

      Steht einfach nur das im Quellcode... wo anders hinschreiben kann ich eval nicht, schließlich soll er meinen html-Code nicht als PHP-Code behandeln...
      [SIZE=1]Projekte:
      wartower.de | planetd2.de

      Kommentar


      • #4
        Es ist so, das ich ein kleines CMS geschrieben habe, womit ich den Content auf meiner Seite verändern kann. Nun habe ich noch eine Funktion geschrieben um Thumbnailbilder auf den Contentseiten besonders leicht zu platzieren... um das ganze vieleicht verständlicher zu machen.
        [SIZE=1]Projekte:
        wartower.de | planetd2.de

        Kommentar


        • #5
          Hm? Dann ist der Webserver falsch konfiguriert und jagt Dateien mit dieser Endung nicht durch den PHP-Interpreter.

          Kommentar


          • #6
            das eval muss dort hin wo Du Deine Datan aus der DB holst und interpretieren willst.
            Beantworte nie Threads mit mehr als 15 followups...
            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

            Kommentar


            • #7
              Also ich habe eine artikel.php Datei inder ich einfach nur Text aus einer MySQL DB "echoe" . In diesem Text befindet sich wiederum php kram der einfach nicht interprätiert wird.

              Um es vieleicht besser nachvollziehen zu können: http://gw.gamona.de/artikel/artikel.php?id=20
              Zuletzt geändert von Perpetuum; 12.08.2004, 18:26.
              [SIZE=1]Projekte:
              wartower.de | planetd2.de

              Kommentar


              • #8
                genau so ises und dort muss eben dein eval hin
                Beantworte nie Threads mit mehr als 15 followups...
                Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                Kommentar


                • #9
                  Wenn ich satt dem

                  echo $datensatz[text];

                  ein

                  eval ($datensatz[text]);

                  hinsetze bekomme ich einen error:
                  Parse error: parse error, unexpected '<' in /var/www/de/wartower/web/artikel/artikel.php(71) : eval()'d code on line 1
                  [SIZE=1]Projekte:
                  wartower.de | planetd2.de

                  Kommentar


                  • #10
                    tja dann solltest Du mal lernen wie man eval benutzt.
                    Beantworte nie Threads mit mehr als 15 followups...
                    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                    Kommentar


                    • #11
                      Original geschrieben von Perpetuum
                      Wenn ich satt dem

                      echo $datensatz[text];

                      ein

                      eval ($datensatz[text]);

                      hinsetze bekomme ich einen error:
                      Parse error: parse error, unexpected '<' in /var/www/de/wartower/web/artikel/artikel.php(71) : eval()'d code on line 1
                      klar da fehlt was. RTFM

                      Kommentar


                      • #12
                        Ehm die Manual ist bei mir ständig geöffnet nur hilft sie mir hier nicht wirklich weiter, weil ich nicht verstehe was sie mir damit sagen will:

                        PHP-Code:
                        <?php
                        $string 
                        'Bierglas';
                        $name 'Binding-Lager';
                        $str 'Das ist mein $string, voll mit $name.<br>';
                        echo 
                        $str;
                        eval (
                        "\$str = \"$str\";");
                        echo 
                        $str;
                        ?>
                        Kann es sein, dass solche Zeichen wei " mit \ escaped werden müssen? Damit das ganze funktionier?

                        Das hier funzt auch nicht:

                        PHP-Code:

                        $str 
                        '$datensatz[text]';
                        eval (
                        "\$str = \"$str\";");
                        echo 
                        $str
                        Zuletzt geändert von Perpetuum; 12.08.2004, 20:00.
                        [SIZE=1]Projekte:
                        wartower.de | planetd2.de

                        Kommentar


                        • #13
                          Naja manchmal muss ein " nicht nur \" heißen sondern \\\" ...

                          Vergleich doch mal deinen Code ( --> eval ($datensatz[text]); ) mit dem ausm Manual.... da siehste schon was da "anders" ist... außerdem: die frage mit dem "kann es sein?" hättest du dir auch durch Ausprobieren selber beantworten können
                          Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
                          var_dump(), print_r(), debug_backtrace und echo.
                          Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
                          Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
                          Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

                          Kommentar


                          • #14
                            Gibt es vieleicht irgendwo nützliche infos zum eval? Weil ich habe keine Ahung wie mein String nun aussehen muss, damit das läuft...
                            [SIZE=1]Projekte:
                            wartower.de | planetd2.de

                            Kommentar


                            • #15
                              Remember that the string passed must be valid PHP code, including things like terminating statements with a semicolon
                              gründlich lesen kannst du auch nicht, oder?

                              Kommentar

                              Lädt...
                              X