Autor Zpráva
jakubroz
Profil
ahoj,
Vypisuju tv program z rss a potřebuju udělat přepsání tohodle znaku & na "a"
udělal jsem to takhle:
<?php
foreach ($prave_hraje as $p)
{
$str = $p['porad'];
$pat = "&";
$repl = "a";
echo '<tr>';
echo '<td class="program">'.$p['program'].'</td>';
echo '<td>'.$p['od'].'</td>';
echo '<td>-</td>';
echo '<td>'.$p['do'].'</td>';
echo '<td>'.(ereg_replace($pat, $repl, $str)).'</td>';
echo '</tr>';
}
?>


Nefunguje to, nevíte proč?
nightfish
Profil
ereg_replace nahraď za
str_replace($par, $repl, $str)
jakubroz
Profil
dik, takže takto?
<?php
foreach ($prave_hraje as $p)
{
$str = $p['porad'];
$pat = "&";
$repl = "a";
echo '<tr>';
echo '<td class="program">'.$p['program'].'</td>';
echo '<td>'.$p['od'].'</td>';
echo '<td>-</td>';
echo '<td>'.$p['do'].'</td>';
echo '<td>'.(str_replace($pat, $repl, $str)).'</td>';
echo '</tr>';
}
?></table>
jakubroz
Profil
tak tohle nejde
karbon
Profil *
Vypisuje to vůbec něco? Já bych to tipnul na
$str = $p['porad'];
jakubroz
Profil
jo je to tv program
a když dávají Lensen & Spol tak to píše chyby. prostě ten znak musim přepsat na "a"
nightfish
Profil
tak tohle nejde
jak nejde? co to dělá?

a když dávají Lensen & Spol tak to píše chyby. prostě ten znak musim přepsat na "a"
jaké chyby?
máš zapnutý error_reporting na E_ALL?
jakubroz
Profil
no, prostě to tomu parseru dělá problémy. vypysuje samé chyby.
A tak snad pokud by to fungovalo tak by ten parser chyby nepsal, protože by tam ten znak nebyl ne?
24_h
Profil *
a co zkust & yapsat jako &amp;
Mike8748
Profil
tomu parseru vadi znak & v tom zdrojovem xml souboru. nejaky nahrazovani pri vypisu je ti nanic, protoze se ti sekne parser, xml nenacte a na nejakej vypis to potom kasle (nema co vypisovat)

takze radku
$xml=simplexml_load_file($sourceFile);	


nahrad timhle
$sourcexml=file_get_contents($sourceFile);
$sourcexml=str_replace('&','&amp;',$sourcexml);
$xml=simplexml_load_string($sourcexml);

pripadne na promene $sourcexml udelas osetreni na nejaky dalsi znaky, ktery by se tomu nelibily

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:

0