Wieso versteht ihr denn alle nicht was der Sinn dahinter ist?
Also ich möchte den Code ausführen, weil er sonst wegen dem FCKeditor einfach ausgegeben wird. Deswegen brauch ich halt die funktion um erstens den Code zum importieren und zweitens dann auszuführen.
Und was PHP in der Datenbank angeht, das ist wohl eher eine eigene Meinung ob es da rein kann oder nicht. Ich finde es spricht nichts dagegen.
Für die Datenbank ist es ja ganz normaler Text.
Beiträge von MyXoToD
-
-
Ist mit sicherheit auch eine Gute Lösung
Bei größeren Projekten würde ich warscheinlich dann auch doch darauf zurückgreifen, allerdings reicht das wa sich jetzt hab für meine Seite voll und ganz aus
-
Wieso hälst du das nicht für gut Snippets in Datenbanken zu speichern? Das ist doch grad ein guter Ort. Manche bzw. die meisten CMS Speichern ihr ganzes Template + das was dazu gehört in der Datenbank...
So kann ich nämlich beliebig Snippet hinzufügen, editieren und löschen. -
Also meine Seite funktioniert so:
Ich hab im Backend mein Formular um verschiedene Artikel anzulegen.
Das Formular benutzt den FCKeditor. Darüber kann ich aber kein PHP benutzen.
Alle Artikel werden bei Einzelansicht aus der Datenbank in die Datei viewpost.inc.php ausgelesen. Und wenn ich jetzt in einem Artikel ein kleines Script zeigen will brauch ich halt sowas wie snippets...
Es handelt sich zur Zeit um meine Private Website: Link ist in der Signatur. Schaus dir an dann verstehst du wie das ganze aufgebaut ist. -
Die Zeile hat die Notice gemeint allerdings wars eine Zeile davor, das Script ist jetzt so und scheint vorerst richtig zu funktionieren:
PHP
Alles anzeigenfunction run($str) { ob_start(); eval($str); $str=ob_get_contents(); ob_end_clean(); return $str; } function getSnippets($text,$resource) { preg_match_all('/\[\[(.+?)\]\]/is',$text,$ergebnis); for ($i=0;$i<count($ergebnis[0]);$i++) { $snippet_tag = $ergebnis[0][$i]; $name = substr($snippet_tag, 2, -2); $snippet_query = "SELECT code FROM snippets WHERE name = '{$name}'"; $snippet_result = mysql_query($snippet_query,$resource); if (mysql_num_rows($snippet_result) > 0) { $snippet = mysql_fetch_array($snippet_result); $text = str_replace($snippet_tag,run($snippet['code']),$text); } } return $text; }
Vielen Dank für eure Hilfe
-
Danke Tobse, das scheint zu funktionieren. Ich werd mal versuchen das Script jetzt abzuändenr, das es sich das PHP aus einer Datenbank holt...
EDIT//
Hab das ganze jetzt abgeändert, allerdings bekomm ich jetzt eine Notice "Notice: Undefined offset: 1 in /www/htdocs/xxxxxx/xxxxxx/includes/functions.inc.php on line 191"
Hab schon die ganze Zeit rumprobiert aber ich bekomms nicht wirklich hin... Das ersetzen klappt allerdings wunderbar
Der Code wird auch ausgeführt.
...hab gerade nochmal geschaut was passiert wenn ich mehr als ein "snippet" einbinde. Dann kommt keine Notice. Nur wenn EIN snippet im Content ist...PHP
Alles anzeigenfunction run($str) { ob_start(); eval($str); $str=ob_get_contents(); ob_end_clean(); return $str; } function getSnippets($text,$resource) { preg_match_all('/\[\[(.+?)\]\]/is',$text,$ergebnis); for ($i=0;$i<count($ergebnis);$i++) { $snippet_tag = $ergebnis[0][$i]; $name = substr($snippet_tag, 2, -2); $snippet_query = "SELECT code FROM snippets WHERE name = '{$name}'"; $snippet_result = mysql_query($snippet_query,$resource); if (mysql_num_rows($snippet_result) > 0) { $snippet = mysql_fetch_array($snippet_result); $text = str_replace($snippet_tag,run($snippet['code']),$text); } } return $text; }
-
Danke für den Tipp. Das scheint wohl wirklich das zu sein was ich brauch.
Hab mein Script jetzt mal so umgebaut. Sieht jetzt so aus... Allerdings bekomm ich jetzt den PHP Code vor dem Text ausgegeben und nicht da wo er eigentlich sein soll...PHP
Alles anzeigen<?php $text = "[[blabla]]Test Test Test Test Test Test Test <br /> Test Test Test Test Test Test Test <br /> [[snippet]] Test Test Test Test Test [[snippet2]]?"; $snippet[] = "echo 'lol1';"; $snippet[] = "echo 'lol2';"; $snippet[] = "echo 'lol3';"; $vorkommen = strpos($text,'[[snippet]]'); if ($vorkommen !== false) { preg_match_all('/\[\[(.+?)\]\]/is',$text,$ergebnis); for ($i=0;$i<=count($ergebnis);$i++) { $text = str_replace($ergebnis[0][$i],eval($snippet[$i]),$text); } echo $text; } ?>
-
Ich hab ein kleines Problem mit dem Backend meiner Website.
Um Inhalte einzufügen/zu pflegen benutze ich erfolgreich den FCKeditor. Klappt alles wunderbar und bin auch sonst zufrieden. Allerdings hab ich ein kleines Problem...Eigentlich enthalten meine Seiteninhalte kein PHP. Doch auf manchen bräuchte ich das um kleine "Tools" or what ever darzustellen.
Jetzt hab ich mir gedacht, ich kann ja die nötigen PHP Scripte in meiner Datenbank speichern.
Aufrufen tu ich sie dann so:Mein Text im FCKeditor:
Lorem ipsum dolor sit amet, [[PHP_Snippet_Name]] consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.Das ganze kann ja dann so abgespeichert werden, muss halt dann bei Auslesen aus der Datenbank durch eine Funktion, die alle [[xxxxxx]]-Tags durch die PHP Snippets ersetzt.
Genau hier liegt mein problem.
Einen Regulären Ausdruck der mir das alles Ausliest hab ich schon. Allerdings hab ich keine Ahnung wie ich den PHP Code dann ausführen kann...
Das ist mein Code bisher. Ist noch die reinste Baustelle... Und ist auch noch ohne Datenbankverbindungen...PHP
Alles anzeigen<?php $text = "[[blabla]]Test Test Test Test Test Test Test <br /> Test Test Test Test Test Test Test <br /> [[snippet]] Test Test Test Test Test [[snippet2]]?"; $snippet[] = "<?php echo 'lol1'; ?>"; $snippet[] = "<?php echo 'lol2'; ?>"; $snippet[] = "<?php echo 'lol3'; ?>"; $vorkommen = strpos($text,'[[snippet]]'); if ($vorkommen !== false) { preg_match_all('/\[\[(.+?)\]\]/is',$text,$ergebnis); for ($i=0;$i<=count($ergebnis);$i++) { $text = str_replace($ergebnis[0][$i],$snippet[$i],$text); } echo $text; } ?>
Hat jemand eine Idee? Muss nicht auf das aufbauen was ich hier schon programmiert habe, falls jemandem was besseres einfällt immer her damit
Danke im voraus
-
Deine was enthält ein Selectfeld?
Les einfach aus, auf welcher Seite du dich befindest und gibt somit dem Selectfeld eine andere breite, dürfe eigentlich kein großes Problem sein... -
Das ist natürlich auch eine Idee... Ich denke das wäre eine gute Vorgehensweise danke
-
Ich glaube du wirst niemanden finden der dir solch einen Server hinstellt für nur ein bisschen Werbung auf deiner Seite...
Da müsstest du schon SEHR SEHR viele Besucher/Tag haben wie Pion schon sagte...
Warum kaufst du dir nicht einfach einen? Teilweise gibt es die schon recht günstig mit genügend Leistung. -
Danke driver
Unterschriftensammlung ;D Irgendwie bin ich gerade nicht drauf gekommen...
Hm Ich weiß das man eigentlich immer VIELE Unterschriften braucht um wirklich was zu erreichen, das könnte nämlich schonmal das erste Problem werden, weil hier in den umliegenden Dörfern nicht all zu viele Leute wohnen und auch viele ältere Personen die sowieso kein Internet nutzen.
Ich denke ich werde das ganze trotzdem mal in Angriff nehmen und mich dafür einsetzen, weil ich schätze das ich nicht der einzige bin der diese Scheiße mit UMTS aufn Sack geht -
Heyho liebes Forum,
da das Dorf, in dem ich wohne und auch einige drumherum, keinen richtigen DSL Anschluss haben, habe ich mir gedacht einfach mal in all diesen Dörfern eine Namenssammlung zu machen.
Jetzt stellt sich mir nur die Frage > Kann ich damit überhaupt was erreichen?
Hat da jemand schon Erfahrung mit sowas?Ich würde so vorgehen:
Name, Adress, Unterschrift von allen die mithelfen wollen und die Listen dann erstmal den Bürgermeistern vorlegen und dann auch halt zu den Leuten die zu entscheiden haben wo DSL hinkommt und wo nichtFalls Ihr vorschläge habt, immer her damit. Danke
-
Ich erkenne es schon das er es hier gepostet hat und auch auf das besagte voting hinwieß.
Und solche Themen zu verbreiten ist auch sehr viel schöner als irgendwelche Refererlinks oder so ein schrott.
Ich bin mir auch sicher, das Thonixx sich bewusst ist, das sowieso jeder so votet wie er es mag. Bzw. überhaupt votet -
Die PHP Datei und die Datenbank sind UTF8 das war das erste was ich überprüft habe. Anscheinend klappt es jetzt, danke Dodo... Allerdings rafft Google Feedburner anscheinend noch nicht das sich mein Feed verändert hat (Codetechnisch gesehen) und zeigt immenroch die kacke an ;D
Weiß jemand wann Feedburner sich aktualisiert?
-
Wenn man in allen Foren, in denen man angemeldet ist, um ein Voting bettelt (und somit betrügt) kann man schnell die Leiter raufklettern
Wann hat er denn gebettelt?Zitat von ThonixxIch und mein Freund sind auf Bild 31 und wer möchte, kann doch gerne für uns voten
Dankeschöön...Er schreibt hier "wer möchte". Also steht es jedem frei und er hat nicht gesagt bitte votet für mich und meinen Freund.
-
Was meinst du unter FFM?
FFM = Frankfurt am Main
Wow gestern wart ihr noch auf Platz 16 oder so Oo
Nadann wenn Ihr gewinnt wünsch ich euch viel Spaß -
Ist das was du da verwendest ein fertiges Template für Wordpress oder hast du das Template selbst gebaut?
-
Ich hab letztens für meine neue Webseite mal einen dynamischen Feed gebaut der mittels PHP zusammengetzt wird.
Soweit funktioniert auch alles. Ich hab nur ein Problem... Irgendwas klappt anscheinend mit dem Encoding nicht:
http://feeds.feedburner.com/myxotods_website_news_feedDer Quellcode zu meiner feed.php:
PHP
Alles anzeigen<?php include_once('includes/config.inc.php'); $query = "SELECT * FROM artikel_de ORDER BY datum DESC LIMIT 10"; $result = mysql_query($query,$resource); header('Content-type: text/xml'); ?> <rss version="2.0" encoding="UTF-8"> <channel> <title>MyXoToD's Website RSS Feed</title> <description>MyXoToD's Website (Max Boll) – Webdesign, Tutorials, Grafik- & Videobearbeitung</description> <link>http://www.myxotod.de/</link> <copyright>Copyright by Max Boll (http://www.myxotod.de)</copyright> <?php while($row = mysql_fetch_array($result)) { $datum = date('r',$row['datum']); $crop_to = 200; $text = utf8_decode($row['text']); $text = preg_replace("#<h[1-6]>(.+?)</h[1-6]>#si"," ",$text); $text = str_replace("<br>"," ",$text); $text = str_replace("<br/>"," ",$text); $text = str_replace("<br />"," ",$text); $text = strip_tags($text); $text = html_entity_decode($text); if(strlen($text) > $crop_to) { $text = substr($text,0,$crop_to); while(substr($text,-1) != " ") { $text = substr($text,0,strlen($text)-1); } $text .= "…"; } ?> <item> <title><?php echo htmlentities(strip_tags($row['titel'])); ?></title> <description><?php echo "<img src='".$row['bild']."' alt='' /><br /><br />".$text;?></description> <link>http://www.myxotod.de/index.php?viewpost=<?php echo $row['id'];?></link> <pubDate> <?php echo $datum; ?></pubDate> </item> <? } ?> </channel> </rss>
Ich habe gerade das utf8_decode, das Bild in der description und die Funktion zum kürzen der Texte eingefügt, allerdings Ändert sich bei mir in Feedburner garnichts... Da ist immernoch der alte, lange, text ohne Bild und mit BAD ENCODING!!
Kann mir jemand sagen wa sich falsch mache?
-
Eine eigene TLD ist nicht Sinnlos... Damit haste bei SEO mehr chancen und wirst besser eingestuft und es sieht einfach toller aus wenn man ne TLD hat ;D
Der Blog sieht gut aus. Layout gefällt mir, ist eher einfach.
Technik: Is halt ein Wordpress ;D