Picco: php stellt sich tot

hi,
MySQL-Client-Version: 5.0.32

in der Datenbank stehen sachen wie
<?php echo $varbiable; ?>

ich habe auch getested ob
echo $varbiable;
funktioniert und ich muss sagen leider nein.
Ich bekomme immer das php einfach ausgegeben wie text.

Wie kann ich es also machen das ich php in eine Datenbank schreibe die dann in eine php Datei auslesen und dann dort "benutzen" kann also ,dass das php dann auch noch ausgeführt wird?

  1. Hallo,

    Wie kann ich es also machen das ich php in eine Datenbank schreibe die dann in eine php Datei auslesen und dann dort "benutzen" kann also ,dass das php dann auch noch ausgeführt wird?

    eval() führt Code aus. Nur beachte, dass eval() evil ist.

    MfG. Christoph Ludwig

    --
    Wo die Sprache aufhört, fängt die Musik an...
    Selfcode:  sh:( fo:| ch:} rl:( br:> n4:? ie:{ mo:) va:} js:| de:> zu:) fl:( ss:) ls:&
    Go to this
    1. eval() führt Code aus. Nur beachte, dass eval() evil ist.

      in meiner test spalte:

        
        
      echo 'ohne php';  
      <?php  
      	echo 'mit php';  
      ?>
      

      code:

        
      while($row = mysql_fetch_array( $result )) {  
      	$test=$row['de'];  
      	eval ("\$str = \"$test\";");  
      	echo $row['en'];  
      	/*echo $row['de'];*/  
      	echo $str;  
      	$inhalte = 1;  
      } 
      

      ergebniss:

        
      echo 'ohne php';
      

      somit ist leider alles beim alten geblieben. Das schlimmste ist das ich keine Idee habe wo mein Fehler ist :(

      1. hi,

        Das schlimmste ist das ich keine Idee habe wo mein Fehler ist :(

        In deinem Datenbank-Design.

        Erkläre doch erstmal, was du vor hast und was das Ziel ist.

        mfg

        --
        マルコム ベック`秒 エイリアス エJ Ñ - ĜわたしÑ
          • id (klar denk ich mal)
          • de (texte auf deutsch + ggf php Inhalte wie z.B. ein e-mail sende Formular)
          • name (Name der Seite)
          • öffentlich (kann da jeder hin?)

          die Seite ist auf andere sprachen Erweiter bar(einfach eine spalte dazu)

          und das wo ich das mache ist eine art test Seite die ich für ein Spiel mache. ich wollte das nicht unbedingt gleich an der Seite zum Geld verdienen ausprobieren.

          in der Datenbank sollen einfach nur alle Inhalte sein die ich sonst in eine .php Datei geschrieben hätte damit ich leichter filtern kann/ auf andere sprachen erweitern kann ohne alles doppel und dreifach zu haben/ damit ich später (irgendwann) eine einfache Administrations-Oberfläche bauen kann.

          1. hi,

            in der Datenbank sollen einfach nur alle Inhalte sein die ich sonst in eine .php Datei geschrieben hätte damit ich leichter filtern kann/ auf andere sprachen erweitern kann ohne alles doppel und dreifach zu haben/ damit ich später (irgendwann) eine einfache Administrations-Oberfläche bauen kann.

            Und wofür benötigst du an dieser stelle irgendwelche echos? Das "echo" hast du doch schon, wenn du die Inhalte aus der DB ausliest und auf der Seite ausgibst.

            mfg

            --
            マルコム ベック`秒 エイリアス エJ Ñ - ĜわたしÑ
            1. Und wofür benötigst du an dieser stelle irgendwelche echos? Das "echo" hast du doch schon, wenn du die Inhalte aus der DB ausliest und auf der Seite ausgibst.

              die echos sind eine art test Eintrag damit ich weis was funktioniert und was nicht

              1. qPico

                Pico,  Was du vorhast, ist Unsinn, vollkommener Unsinn. Du brauchst, _egal_ was du vorhast, keinen PHP-code in der Datenbank zu speichern.

                In die Datenbank kommen DATEN. Z.b. in das Feld oeffentlich der Wert 1. Oder 0. Aber keine Variable $offentlich=1. Das Konzept ist aus vielerlei Gründen abzulehnen, unter anderem der Portierbarkeit.

      2. Moin!

        somit ist leider alles beim alten geblieben. Das schlimmste ist das ich keine Idee habe wo mein Fehler ist :(

        Du probierst wild in der Gegend herum. Du hast keinerlei Ahnung, was du da eigentlich gerade produzierst. Du hast keine Ahnung, wie du vernünftige Fehlersuche betreibst. Und in dieser misslichen Lage willst du obendrein auch noch eval() einsetzen, um den vollkommenen SuperGAU herbeizuführen.

        Sorry, aber mein Verantwortungsgefühl verhindert an dieser Stelle, dass ich dir bei so einem Unsinn auch noch zur Hand gehe.

        Platziere deine PHP-Skripte in Dateien, nicht in der Datenbank. Das ist die einzige Lösung, die man dir sinn- und verantwortungsvoll geben kann.

        - Sven Rautenberg

        1. Du probierst wild in der Gegend herum. Du hast keinerlei Ahnung, was du da eigentlich gerade produzierst. Du hast keine Ahnung, wie du vernünftige Fehlersuche betreibst. Und in dieser misslichen Lage willst du obendrein auch noch eval() einsetzen, um den vollkommenen SuperGAU herbeizuführen.

          In die Datenbank kommen DATEN. Z.b. in das Feld oeffentlich der Wert 1. Oder 0. Aber keine Variable $offentlich=1. Das Konzept ist aus vielerlei Gründen abzulehnen, unter anderem der Portierbarkeit.

          das mit dem Eval() hab ich ja als erste Antwort bekommen und ausprobiert.
          naja das wird aber ein hick hack die eine Datei kann man unter ?seite=... erreichen und die andere unter ... .php

          und ja ich probier grade planlos rum und genau deswegen frag ich ja in einem forum weil ich im augenblick wirklich keine ahnung habe. wen ihr mir hier sagt "geht net" naja muss ich mir halt was anderes überlegen.

  2. Hello,

    ja, wie jetzt?
    Ist PHP tot, also nützt die Weitergabe[1] des Webserverers an einen PHP-Interpreter nichts, oder ist einfach nur iene Datenbankabfrage integer geblieben, ohne "von sich aus" Code an irgendeinen Interpreter zurückzugeben?

    [1] entweder die sofortige Kontollübergabe an den PHP-Interpreter, der als Modul des Apachen läuft, oder diemInstatierung eines CGI-Scriptes, das den PHP-Code odr den Namen der Temporärdatei übergeben bekommt.

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    Den obligatorischen (Ab-)Satz mit Uschi und Wolle verkneife ich mir diesmal
    1. ja, wie jetzt?
      Ist PHP tot, also nützt die Weitergabe[1] des Webserverers an einen PHP-Interpreter nichts, oder ist einfach nur iene Datenbankabfrage integer geblieben, ohne "von sich aus" Code an irgendeinen Interpreter zurückzugeben?

      [1] entweder die sofortige Kontollübergabe an den PHP-Interpreter, der als Modul des Apachen läuft, oder diemInstatierung eines CGI-Scriptes, das den PHP-Code odr den Namen der Temporärdatei übergeben bekommt.

      also das was an wie und wo finde ich recht verwirredn es soll nur einfach gehen.

      im augenblick ist es so:

      • php code steht in Datenbank
      • index.php erstellt eine Datenbank Abfrege (je nach dem was in "?seite=" ist)
      • auf der Seite steht alles an php code was ich direkt in der Datenbank nicht mit <?php und ?> versehen hab
      • in halte die zischen <?php und ?> stehen sind verschwunden
      1. Hallo Picco,

        Datenhaltung in Datenbanken mag was ganz tolles, unbeschreiblich geniales und der Rundumschlag für alle Probleme sein, aber bis zum heutigen Tag habe ich nicht _einen_ Fall erlebt, der nicht adäquat völlig unspektakulär, leicht wartbar und übersichtlich mit einem Filesystem hätte erledigt werden können.

        Insbesondere in Deinem Fall ist mir schlichtweg nicht ersichtlich, warum Du diesen Hokuspokus betreibst. Für den Fall, dass (zu) viele Templates zur Generierung eines Dokuments brauchst, sodass das ganze im FS zu unübersichtlich sein sollte, oder andere Bedenken entstehen sollten, was ich mir auch nicht vorstellen kann, gibt es immer noch Möglichkeiten, wie z. b. ein Datenfeld befüllt mit den entsprechenden Stücken zu nutzen und vielleicht auch zu serialisieren. PHP ist mehr als ein Datenbankclient. PHP sollte nach meinem Geschmack vorwiegend als Scriptsprache begriffen werden!

        Gruß aus Berlin!
        eddi

        --
        Ach übrigens: X für'n U verkürzt Strecken nur scheinbar!
        1. naja das Problem ist wo bekomme ich ein einfaches administrations system her das in meine files rum springt und mir erlaub da formen (vorgefertigte tabelle oä) zu bauen?
          und das natürlich:

          • kostenlos
          • werbe frei
          • wartungs unaufwendig?
          1. Re:

            naja das Problem ist wo bekomme ich ein einfaches administrations system her das in meine files rum springt und mir erlaub da formen (vorgefertigte tabelle oä) zu bauen?

            Lehne Dich entspannt zurück, nimm ein altbackenes Blatt Papier, schreibe Deine Vorstellungen auf und setze sie dann selbst um. Hilfe bekommst Du hier, wenn es hackt. Das weist Du.
             Sieh Dich um und begreife wie viele Konsumenten, die über Gebrauch vielleicht noch Lehrsätze scholastisch daherbeten können, und wie wenig Produzenten es gibt und dann frage Dich, wer abhängig und wer frei ist.

            Gruß aus Berlin!
            eddi

            --
            Ach übrigens: X für'n U verkürzt Strecken nur scheinbar!