sigird
23.02.2004, 15:26:36
Witam mam problem z wykonaniem pobranego kodu php z bazy MySQL. Chodzi mi oto żeby pobrany kod został wykonany przez serwer a nie wyswietlony w postaci:
<font face=verdana><b><?php echo("tekst"); ?></b></font>
Proszę o pomoc...
enceladus
23.02.2004, 15:33:52
Trochę dziwna metoda ale:
[manual:360fb1331e]eval[/manual:360fb1331e] - chyba o to Ci chodzi, czyli jeśli zmienna $x zawiera wyciągnięty kod php z bazy to:
[php:1:360fb1331e]<?php
eval ($x);
?>[/php:1:360fb1331e]
sigird
23.02.2004, 16:20:30
niestety nie dziala albo nie umiem posłużyc sie tą funkcją... wyskakuje mi blad: (Parse error: parse error in d:serwerindex.php(15) : eval()'d code on line 1)
czachor
23.02.2004, 18:39:10
może spróbuj tak (nie do końca wiem, czy o to chodzi):
[php:1:077c694874]<?
$u = "tekst";
$i = '<font face=verdana><b>$u</b></font> ';
echo $i . "n"; // to wyświetli '$u'
eval("$i = "$i";");
echo $i; // to wyświetli 'tekst'
?>[/php:1:077c694874]
ew. przejrzyj manuala: [manual:077c694874]eval[/manual:077c694874]
sigird
23.02.2004, 19:49:57
Korzystam z takiego czegoś:
[php:1:415ae60a8d]<?php
conect_db($mysql->login, $mysql->haslo, $mysql->host, $mysql->baza);
$zapytanie = mysql_query("SELECT * FROM tabela WHERE id='1';");
$db = mysql_fetch_array($zapytanie);
echo($db[4]);
?>[/php:1:415ae60a8d]
W tablicy $db[4] jest zawartosc tekstowa w której pomiedzy kodem HTML znajduje się również kod php który nie jest wykonywany tylko wyświetlany razem z HTML'em co po podejżeniu źródła strony wyglada tak:
=================================
<html>
<body>
<font face=verdana>
<?php
echo("tekst_do_wyswietlenia");
moja_funkcja();
$i=0;
while($i++ < 10){
echo($i);
}
?></font>
</body>
</html>
=================================
Proszę o pomoc...
enceladus
23.02.2004, 20:35:41
nie pisałeś że w danych z bazy będzie mieszane html+php - eval dziala tylko z php. wydaje mi sie ze nie jest to dobre rozwiązanie - mozesz zapisać zawartość do pliku a potem zrobić include - przy okazji poddaj dane z bazy cache-owaniu.
Remiq
26.02.2004, 22:28:18
U mnie jest coś takiego:
[php:1:ac81a2e01d]<?php
$znajdz= mysql_query("SELECT * from tabela WHERE id='$id'");
$dane = mysql_fetch_array($znajdz);
$dane[tresc] = stripslashes($dane[tresc]);
$dane[tresc] = '?>'.$dane[tresc].'<?';
eval($db[4] );
?>[/php:1:ac81a2e01d]
.. i dobrze się sprawuje...
Chochliki mi się wkradają...
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.