Seite 1 von 1
PHP-Scripts im Content
Verfasst: Do 13. Nov 2003, 15:51
von hyperjojo
Hi,
manchmal mag ich im Content einer Seite kleinere PHP-Scripts direkt einfügen.
Wie mache ich das am einfachsten?
Ich möchte ja nicht für jedes Mini-Script ein eigenes Template erstellen, wo dann das entsprechende Modul geladen wird.
Gibt es nicht ein Modul, bei dem ich (wie auch bei normalem Text) einfach im Backend Code einfügen kann und dieser im Frontend ausgeführt wird???
Oder wie macht ihr das? Andere Ideen, Möglichkeiten??
Freue mich über jede Anregung
hyperjojo
Verfasst: Do 13. Nov 2003, 16:21
von timo
such mal im Forum - da hat jemand ein PHP Include-Modul geschrieben.
Verfasst: Do 13. Nov 2003, 20:15
von hyperjojo
Hi,
includen wollte ich ja nicht, dann muss ich pro Script ja jedesmal ne extra Datei anlegen...
Ich mag einfach im Backend den Code direkt eingeben...
Noch jemand ne Idee??
thx!!!
bye
Verfasst: Do 13. Nov 2003, 23:15
von chobbert
Hallo,
mag sein, daß ich mich täusche, aber solltest Du Dein gewünschtes Ergebnis nicht einfach erreichen in dem Du folgendes Modul anlegst:
Input
Code: Alles auswählen
<text<? echo area; ?> name="CMS_VAR[1]" cols=60 rows=20>CMS_VALUE[1]</text <? echo area; ?>>
Output:
Alles ungetestet und ohne Garantie, versteht sich... Sag bitte Bescheid, ob es funktioniert!
Schöne Grüße
Robert
Verfasst: Fr 14. Nov 2003, 11:10
von hyperjojo
Hi,
deine Idee hatte ich auch schon:
Input:
Code: Alles auswählen
echo "<text";
echo "area name=\"CMS_VAR[1]\" cols=60 rows=20>CMS_VALUE[1]";
echo "</text";
echo"area";
Output:
Problem: Ich kann nur reinen Text eingeben. Sobald ich "<?php" eingebe, kommt im Frontend nurnoch eine weiße Seite, sonst nix. Irgendwie ist php-Code also im CMS_VALUE verboten, oder??
Würd mich freuen, wenn wir das noch hinbekommen!!
bye
hyperjojo
Verfasst: Fr 14. Nov 2003, 11:15
von timo
Ich würde "echo" durch "eval" im Output-Bereich ersetzen.
Verfasst: Fr 14. Nov 2003, 11:31
von hyperjojo
Hi Timo,
auch das hatte ich schon probiert:
Code: Alles auswählen
<?php
eval ("\$cms_value[1] = \"CMS_VALUE[1]\";");
echo $cms_value[1];
?>
Funzt genauso wenig...
hmmm....
Verfasst: Fr 14. Nov 2003, 12:03
von timo
und ohne einleitenden <?php tag?
Verfasst: Fr 14. Nov 2003, 12:19
von hyperjojo
neee,
auch ohne einleitenden php-tag gehts nit, dann bekomme ich den phpcode als ausgabe. is ja auch logisch...
bye
Verfasst: Fr 14. Nov 2003, 14:00
von chobbert
Hallo,
naja, "logisch" ist es nicht, denn die CMS_VALUE-Platzhalter werden von Contenido mit dem dafür gespeicherten Wert ausgetauscht. Der daraus entstehende Code wird dann am Schluß mit eval() ausgeführt. Nur was mit echo() im Code dargestellt wird, erscheint später als Text.
Mit einem Output-Modul
wird der eingegebene Code korrekt ausgeführt. Also
weder echo() noch eval(), wobei eval() nicht schaden sollte.
Bei mir funktioniert es jedenfalls. Man sollte das Input-Modul lediglich so erweitern, daß die Quotes entfernt werden, die dem Code in der Datenbank hinzugefügt wurden.
Schöne Grüße
Robert
Verfasst: Fr 14. Nov 2003, 15:39
von hyperjojo
Noe, es funzt nit.
ohne beides wird zwar das Input ausgegeben, aber der PHP-Code nicht ausgeführt. Wenn im Input dann auch noch <?php steht, wird sogar teilweise der Code aus dem Ausgabe-Modul ausgegeben...
Kann das denn nicht mal jemand bei sich testen?? Ich bekomm's net hin...
bye
Verfasst: Fr 14. Nov 2003, 16:44
von emergence
input
Code: Alles auswählen
?>
<text<? echo "area"; ?> name="CMS_VAR[1]" cols=60 rows=20>CMS_VALUE[1]</text<? echo "area"; ?>>
<?php
output
den code gibst dann ohne !! <?php und ?> ein...
Verfasst: Fr 14. Nov 2003, 19:28
von hyperjojo
noe, es funzt nit.
1. werden bei jedem abspeichern die escape-slashes hinzugefügt
2. macht das output immernoch zicken
oder funzt es bei dir einwandfrei?? gib mal mehrmals text ein, speicher ab usw...
bye
Verfasst: Sa 15. Nov 2003, 10:03
von emergence
das mit quotes würde mit
Input:
Code: Alles auswählen
?>
<text<?php echo "area"; ?> name="CMS_VAR[1]" cols=60 rows=20><?php echo urldecode("CMS_VALUE[1]") ?></text<?php echo "area"; ?>>
<?php
gehen...
nur ergibt sich daraus ein anderes problem....
sämtlich variablen zb wenn eingegeben wird -> $var sind dann nicht mehr bearbeitbar... innerhalb der seite wird sie normal verwendet und|oder angezeigt... aber das merkst sofort wenn du es einmal gespeichert hast...
ideal ist es aber nicht, dass die scripts innerhalb von con_container_conf gespeichert werden...
Verfasst: Mo 17. Nov 2003, 15:24
von emergence