Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Wykonywanie kodu php pobranego z bazy...
Forum PHP.pl > Forum > Przedszkole
Turgon
  1. <?php
  2. $result = mysql_query("SELECT * FROM bloki WHERE nazwa = 'header'");
  3. $lala = mysql_fetch_array($result);
  4. echo $lala['tresc'];
  5. ?>


I problem... Otóż Header zawiera kod php który wymaga przerobienia winksmiley.jpg . Jak zrobić by sparsował to ?
nospor
to wkoncu header czy tresc? bo tresc pobierasz z bazy

no nic:
http://pl.php.net/manual/pl/function.eval.php
Turgon
Tylko niezbyt kumam jak to używać winksmiley.jpg . Bo ja np. w kodzie umieszczony w bazie np. <?php include 'something.php'; ?> winksmiley.jpg .
nospor
no przeciez w linku masz przyklad....
  1. <?php
  2. eval($kodzbazy);
  3. ?>


ps: przenosze
Turgon
Robię tak i jakieś błędy wywala...
Konkretnie to takie :
Kod
Parse error: parse error, unexpected T_DO in C:\Documents and Settings\Administrator\Moje dokumenty\xampplite\htdocs\libs\funkcje.php(14) : eval()'d code on line 1
Ludvik
Masz błąd składni w wykonywanym kodzie, przed słowem kluczowym do...
Turgon
Nie kumam nadal, a to pilne. Jeszcze dzisiaj muszę to evalowanie kodu załatwić tyle, że razem z php jest jeszcze zwyczajny tekst...
Ludvik
Wystarczyło poszukać trochę w manualu... Jeżeli masz pomieszane dane z php, nie możesz użyć samego eval. W komentarzach znalazłem funkcję...

  1. <?php
  2. function eval_mixed_helper($arr) { 
  3.  return ("echo stripslashes("".addslashes($arr[1])."");");
  4. }
  5. ?>


  1. function eval_mixed($string) {
  2.  $string = "<? ?>".$string."<? ?>";
  3.  $string = preg_replace("/<?=s+(.*?)s+?>/", "<? echo $1; ?>", $string);
  4.  $string = str_replace('?>', '', str_replace( array('<?php', '<?'), '', preg_replace_callback( "/?>((.| )*?)<?/","eval_mixed_helper",$string) ) );
  5.  return eval($string);
  6. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.