Autor | Zpráva | ||
---|---|---|---|
libis Profil |
#1 · Zasláno: 4. 12. 2011, 19:45:24
Zdravím,
Mám výpis z db, tam mám například toto: $text = " Text je tady a pod tím bude něco.<br /><br /><br /> [galerie=25] Dále si můžete stáhnout toto: [download = 17]"; Použil jsem preg_replace_callback, ale vždy se mi zobrazí prvně ta funkce a až pak ten text. Potřebuju, aby to bylo souvisle vloženo do článku. Jak na to prosím? |
||
Tori Profil |
#2 · Zasláno: 4. 12. 2011, 19:49:04
libis:
Ukažte to nahrazování, chyba bude zřejmě v tom. |
||
libis Profil |
#3 · Zasláno: 4. 12. 2011, 19:49:42
$co = "/\\[galerie\\=([a-z0-9]+)\\]/i";
echo preg_replace_callback($co, 'ObsahGalerie', $result["text"]); |
||
Tori Profil |
#4 · Zasláno: 4. 12. 2011, 19:54:58
libis:
A funkce ObsahGalerie? |
||
nemeja Profil |
#5 · Zasláno: 4. 12. 2011, 19:57:04
Tori:
„A funkce ObsahGalerie?“ Tam to má jako text! |
||
libis Profil |
#6 · Zasláno: 4. 12. 2011, 19:57:41
jo aha...
function ObsahGalerie($galerie) { $galerie[0] = str_replace("[","",$galerie[0]); $galerie[0] = str_replace("]","",$galerie[0]); $query = mysql_query("SELECT * FROM foto2 WHERE $galerie[0]"); if(mysql_num_rows($query) != 0 ){ while($result = mysql_fetch_array($query)){ ZobrazNahled($result["id"], $result["foto"], $result["nadpis"], $result["text"],$result["width"],$result["height"]); } } } |
||
Tori Profil |
#7 · Zasláno: 4. 12. 2011, 20:12:02 · Upravil/a: Tori
libis:
Potřebujete udělat, aby funkce ZobrazNahled místo výpisu vracela to html, které vygeneruje, a aby tento výsledek vracela i funkce ObsahGalerie. Návratovou hodnotou z callbacku se nahrazuje hledaný řetězec. Pokud ten SQL dotaz vrací více řádků, postupně si výstup ukládejte do proměnné. Jinak odstranila bych tu závislost mezi bbcode a strukturou databáze: mysql_query("SELECT * FROM foto2 WHERE galerie = ".intval($galerie[1])); nemeja: „Tam to má jako text!“ preg_replace_callback |
||
libis Profil |
#8 · Zasláno: 4. 12. 2011, 20:20:29
jj, sql vrací více řádků. v sloupci galerie jsou pouze čísla. Jinak díky za reakci, nějak se tím zkusit prokousat.
|
||
libis Profil |
#9 · Zasláno: 4. 12. 2011, 20:33:09
tak díky, tak jsem to přepsal na ten výpis a zobrazuje se to uprostřed článku, mohl bych se zeptat ještě na to, proč bych neměl mít tu závislost toho bbcode? Mám všechny stránky v db, a myslel jsem, že takto se vyřeší popřípadě vložení toho php kódu, o tom jsem právě moc článků nenašel, jak složit větší web :-/
|
||
Tori Profil |
#10 · Zasláno: 5. 12. 2011, 03:03:42
libis:
„proč bych neměl mít tu závislost toho bbcode?“ A proč ano? Čemu pomůže, když ta závislost bude existovat, a čemu uškodí, když nebude? Pokud se rozhodnete přejmenovat sloupec v databázi, nebo přidat do bbcode další parametry pro zobrazení (třeba počet obrázků na stránku) - na kolika místech budete muset následně něco měnit? Když vám vyjde, že takto to je lepší, tak to tak nechte. „o tom jsem právě moc článků nenašel, jak složit větší web“ Mluvíte ještě o způsobu poskládání výstupu (a šablonách), nebo spíš o celku (případně o volbě frameworku)? Zkuste to kdyžtak upřesnit v jiném vlákně, u té první možnosti by i mne zajímaly názory ostatních. :) |
||
Časová prodleva: 12 let
|
0