Oh no! Where's the JavaScript?
Your Web browser does not have JavaScript enabled or does not support JavaScript. Please enable JavaScript on your Web browser to properly view this Web site, or upgrade to a Web browser that does support JavaScript.
Not a member yet? Click here to register.
Forgot Password?

PHPFusion Android App

Asked Modified Viewed 2,053 times
D
douwe_yntema
D
  • Senior Member, joined since
  • Contributed 667 posts on the community forums.
  • Started 57 threads in the forums
  • Started this discussions
  • Answered 1 question
asked
Senior Member

I made an Android App for PHP Fusion.
It is a simple newsreader.
In the attachment there are a few screenshots.

I have some trouble with converting the data in the database to JSON-array. Sometimes there are special characters, which will fail the conversion. I already made an custom function to strip these characters, but sometimes still some text will not be converted.

function convert_smart_quotes($string) 
{
    $search = array(chr(145),
                    chr(146),
                    chr(147),
                    chr(148),
                    chr(151),
                    chr(225));
 
    $replace = array("'",
                     "'",
                     '"',
                     '"',
                     '-',
                     'a');
 
    return strip_tags(str_replace($search, $replace, $string));


and the calling part:

  $mdata['news_news'] = $data['news_breaks'] == "y" ? nl2br(stripslashes($data['news_news'])) : stripslashes($data['news_news']);
   $mdata['news_news'] = convert_smart_quotes($mdata['news_news']);


Has someone experience how to handle this?
douwe_yntema attached the following file:
fusionnewsreader.png [No information available / 118 Downloads]
0 replies

6 posts

R
Rimelek
R
  • Senior Member, joined since
  • Contributed 301 posts on the community forums.
  • Started 23 threads in the forums
answered
Senior Member

I don't understand why you need it. Note that json_encode needs a UTF-8 string, but the text from the database should be UTF-8.
And I don't know if the characters you enumerated can be the part of a unicode character. If they can, you will brake them with this solution.
0 replies
D
douwe_yntema
D
  • Senior Member, joined since
  • Contributed 667 posts on the community forums.
  • Started 57 threads in the forums
  • Started this discussions
  • Answered 1 question
answered
Senior Member

If. I don't use the function, there is a null output of the JSON encode. Most string wil. convert now, but some still give a null result.
0 replies
R
Rimelek
R
  • Senior Member, joined since
  • Contributed 301 posts on the community forums.
  • Started 23 threads in the forums
answered
Senior Member

Yes, it could happen when you call the json_encode with an invalid encoded input. I can't imagine other case now.

Could you give me an example string?
0 replies
D
douwe_yntema
D
  • Senior Member, joined since
  • Contributed 667 posts on the community forums.
  • Started 57 threads in the forums
  • Started this discussions
  • Answered 1 question
answered
Senior Member

This one I can not convert:

Quote


Op zaterdag 13 December 2014 waren de bixieruiters weer aan de beurt om op jacht te gaan naar winstpunten en eremetaal. In de rijhal van de Morraruters te Koudum kon men naast de gewone bixie rubrieken ook voor de eerste keer mee doen aan een men rubriek. Er waren in totaal 27 deelnemers in de dressuur, 4 deelnemers in het mennen en 8 bij het springen. 
In de klasse A startte Amarins Lycklema a Nijeholt met haar pony Geldau en kreeg voor beide proeven de maximale score van 84 pnt(=2wp). Dit leverde haar uiteraard twee keer de 1e prijs op. Brecht Ruiter verscheen met haar pony Okki voor de eerste keer in de klasse B1 en won ook twee keer de 1e prijs met 111 en 115 pnt(=2wp). Marije Klaske de Vries reed met haar pony Savana voor het eerst een bixie menproef, voor haar eerste proef kreeg ze 73 pnt(1wp) en haar tweede proef leverde 80 pnt(1wp) en de 1e prijs op. 
De overige leden van de Morraruters verschenen o.a aan de start in Sneek. Martha Boekema met Voodoo startte daar in de klasse ZZ-licht en behaalde daar haar tiende en elfde winstpunt door 213 en 215 pnt(=2wp) te scoren. Kenna Bakker reisde met Binck af naar Benningbroek en behaalde in de klasse ZZ-zwaar 60.86 %(1wp). De volgende dag startte ze met Alant fan e Leane op een selectie wedstrijd in de klasse M2, ze scoorde 183 pnt(1wp). Jantine Konst startte zondag 14 December in Cornwerd in de klasse L1 en won de 2e prijs met 187 pnt(1wp), tweede proef 189 pnt(1wp). In Franeker werd het hele weekend een groot springconcours georganiseerd, Deanne Baak startte op donderdagavond met haar paard Dundee in de klasse L en had in beide parcoursen een balkje(=2x1wp). Op zondag sprong Janita Wildschut met Anchar in de klasse B cat DE en sprong twee keer een foutloos parcours(2x2wp). Voor haar eerste parcours kreeg ze de 6e prijs met een stijl van 68,5 pnt, haar tweede parcours leverde de 3e prijs op met een stijl van 68 pnt. Anneke Heida sprong met Rubicon en had één balkje eraf(=1wp). Jildou Heida sprong met Magic Boy beide parcoursen foutloos(2x2wp) met voor beide parcoursen 66 stijlpunten, dit leverde haar de 5e prijs op voor het tweede parcours.
0 replies
R
Rimelek
R
  • Senior Member, joined since
  • Contributed 301 posts on the community forums.
  • Started 23 threads in the forums
answered
Senior Member

This text contains an 'é'. The UTF-8 'é' is not the same as 'é' in other character set. If the text contains a character that is not in UTF-8 character set, json_encode will return FALSE. I suppose the returned value is not NULL but false. And because of the reason I wrote in my previous comment.

You can convert the string this way:
$mdata['news_news'] = mb_convert_encoding($mdata['news_news'], 'utf-8');

But I don't know why it is not utf-8 already. I recommend you to look into it.

Do you connect to the database custom way?
0 replies
D
douwe_yntema
D
  • Senior Member, joined since
  • Contributed 667 posts on the community forums.
  • Started 57 threads in the forums
  • Started this discussions
  • Answered 1 question
answered
Senior Member

Thank you very much Rimelek,

Your solution did the trick.

:G
0 replies

Labels

None yet

Statistics

  • Views 0 views
  • Posts 6 posts
  • Votes 0 votes
  • Topic users 2 members

2 participants

D
D
  • Senior Member, joined since
  • Contributed 667 posts on the community forums.
  • Started 57 threads in the forums
  • Started this discussions
  • Answered 1 question
R
R
  • Senior Member, joined since
  • Contributed 301 posts on the community forums.
  • Started 23 threads in the forums

Notifications

Track thread

You are not receiving notifications from this thread.

Related Questions

Not yet