On Mon, 2009-03-09 at 16:26 +0000, Nathan Rixham wrote: > Joe Harman wrote: > > On Mon, Mar 9, 2009 at 9:53 AM, Bob McConnell <r...@cbord.com> wrote: > >> From: Joe Harman > >>> I am using PHP to build an XML file, but I keep on getting an XML > >>> error when open the file in Google Chrome. > >>> > >> ------------------------------------------------------------------------ > >> --------- > >>> This page contains the following errors: > >>> > >>> error on line 30 at column 318: Entity 'iuml' not defined > >>> Below is a rendering of the page up to the first error. > >>> > >> ------------------------------------------------------------------------ > >> -------- > > > > Okay, Thanks... appears the problem is that I have foreign language > > entities in my HTML... Ugh > > > > I am sure this is not really the most efficient way to do this, but I > > tried using the following to get rid of these, but it appears that it > > just converts them to this i¿½... > > > > $search = > > explode(",","ç,æ,œ,á,é,í,ó,ú,à,è,ì,ò,ù,ä,ë,ï,ö,ü,ÿ,â,ê,î,ô,û,å,e,i,ø,u"); > > $replace = > > explode(",","c,ae,oe,a,e,i,o,u,a,e,i,o,u,a,e,i,o,u,y,a,e,i,o,u,a,e,i,o,u"); > > $decode_string = str_replace($search, $replace, > > html_entity_decode($row_rsFeed['full_desc'])) > > > > I am going to read up some more on sanitizing HTML > > > > Joe > > you need to be dealing with encodings here; whats the encoding of the > original content? iso-8859-1? - in short what you need is to convert all > "text" to be utf-8, more than likely utf8_encode($whatchaNeed) will get > you going in right direction. > > regards! Couple of ways to get round this:
1. Define the entity in a DTD for the XML 2. Put the raw character in the output (i.e. Ï) 3. Write the character as you have done, but put it inside a <![CDATA[ ]]> block Ash www.ashleysheridan.co.uk -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php