Autor | Zpráva | ||
---|---|---|---|
Werewolf Profil |
#1 · Zasláno: 27. 4. 2010, 07:25:15
Zdravím všechny.
Vytahuji z databáze text, ale potřeboval bych, aby se všechny PHP vsuvky v něm provedly. Zkoušel jsem eval, ale do něj nejde napsat obyčejný text (například eval('bla') nevypíše bla). Jak mám tedy provést kód v PHP, ale zbytek nechat nedotčený? Díky |
||
denCo Profil |
#2 · Zasláno: 27. 4. 2010, 08:31:31
skús pomocou preg_*, vyberieš z textu text ohraničený php vsuvkami, ten pomocou eval spravíš a ostatný vypíšeš.
|
||
AM_ Profil |
#3 · Zasláno: 28. 4. 2010, 00:00:57
Workaround:
eval("?>$html<?php"); Správné řešení: Výkonný kód necpat do databáze, ale do souborů. Má to výhody: - bezpečnostní: do databáze se šikovný hacker nahackuje snáze, než do souborů. Pokud je v databázi výkonný kód, hacknutím může způsobit mnohonásobně větší škody. - optimalizace, ladění: eval()ování kódu není zrovna nejrychlejší a hrozně blbě se s ním ladí programy. |
||
Zool Profil * |
#4 · Zasláno: 28. 4. 2010, 08:45:40
Souhlasím AM , pokud potřebuješ něco přepsat v textu z databáze zkus sprintf
|
||
Časová prodleva: 15 let
|
0