Autor Zpráva
fck
Profil *
Zdravím,

mam problém s nevalidními tagy v poli, které mi hází do databáze FCK editor, mam dvě možnosti, buď najdu proč to FCK tak dělá a upravím si to aby některé tagy dělal validně a tak jak chci - <b> = <strong> nebo je před zobrazením proměním za znaky, které potřebuji.

Je ale problém, že je vše uložené v poli a nevím, jak udělat str_replace na určité pole, vytvořil jsem si kód, ale nefunguje mi, mohl by mi někdo pomoci ho zprovoznit?

-------------------------------------------------------
$pole['obsah'] = str_replace(
array("<b>","</b>"),
array("<strong>","</strong>"), $pole['obsah']
);
-------------------------------------------------------
fck
Profil *
Jinak jestli to ještě pomůže, napíšu sem ještě celý kód který používám...

$query = mysql_query("SELECT * FROM clanky WHERE id_stranka = '$id' AND aktivni = 'on' ORDER BY priorita ASC");
$row = array();
while($pole = mysql_fetch_array($query)) {
$row[$pole['id']] = array(
"id" => $pole['id'],
"id_stranka" => $pole['id_stranka'],
"nadpis" => $pole['nazev'],
"priorita" => $pole['priorita'],
"aktivni" => $pole['aktivni'],
"obsah" => $pole['obsah'],
);
}

/*
// Replace nevalidních tagů z editoru
$pole['obsah'] = str_replace(
array("<b>","</b>"),
array("<strong>","</strong>"), $pole['obsah']
);
*/

return($row);
Chamurappi
Profil
Reaguji na fck:
Náhodou jsem dnes koukal na podobné vlákno s opačným problémem.

Proč chceš nahrazovat <b> za <strong>? Jestli je považuješ za významově ekvivalentní, tak je náhrada zbytečná. Jestli je považuješ za významově rozdílné, tak tímto rozdíl setřeš.

aby některé tagy dělal validně
Element <b> je podle všech W3C doporučení úplně stejně validní jako <strong>.
fck
Profil *
Ano, považuji to za lepší tag, ale jak píše kolega v druhém příspěvku, je tam ještě více problémů, které mi vadí a chtěl bych je tímdle způsobem ošetřit.

Nerad bych se zaseknul u toho že se tu začnou lidé hádat o tom zda je lepší <strong> nebo <b> to ať si každej používá co chce, mě jde o to jak použít funkci str_replace() na pole?

Děkuji.
Adam Zábranský
Profil
$pole['obsah'] = preg_replace(
array('/<b>/','/<\/b>/'),
array('<strong>','</strong>'), $pole['obsah']
);
fck
Profil *
Adam Zábranský

Sry ale nefunguje to stejně...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: