2010-09-12 4 views
0

Comment puis-je avoir mon code remplacer le corps du texte plutôt que le « retour »:Filtre PHP pour les caractères spéciaux avant de passer à la base de données SQL

if($body == "Garçon") 
    return; 

De plus, puisque == est à la recherche de chaîne exacte du texte, comment puis-je faire pour le corps contenant "Garçon"? Essentiellement, j'essaye de construire dans un filtre pour changer "Garçon" en "Garçon" puisque le caractère spécial "ç" apparaît "nul" dans ma base de données.

Merci pour votre aide.

Répondre

4

Vous n'avez rien à filtrer ni remplacer aucun symbole.
Configurez simplement votre base de données pour utiliser l'encodage utf8.

Si votre base de données est nouvelle, créez vos tables avec l'option CHARACTER SET=utf8.

et ajouter à vos scripts PHP cet appel, juste après db connexion:

mysql_set_charset("<encoding>"); 

<encoding> est le codage réel de vos pages

+0

Col, Shrapnel - En fait, le vrai problème est avec mon iPhone App. Il transmet les données via l'URL de mon script info.php. Cela signifie que certains caractères spéciaux comme "ç" et "&" ne sont pas transmis correctement. Je pense que peut-être que cela ne peut pas être corrigé avec mon script PHP, mais le code de l'application. Droite? – BigMike

+0

@BigMike c'est difficile à dire sans un exemple réel d'un tel "caractère incorrect". Mais tout peut être corrigé avec le script PHP. Tout ce qui passe par URL doit être correctement encodé, comme le fait la fonction PHP 'urlencode()'. –

+0

ok, super. Merci. Je vais regarder mon code objectif-c et m'assurer que les choses sont correctement codées. – BigMike

Questions connexes