Compter le nombre de caractère dans une chaine ? oui mais...
10 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
Compter le nombre de caractère dans une chaine ? oui mais...
Bonjour,
je souhaite compter le nombre de caractère d'une chaine receptionné par un formulaire. Je fais donc un strlen($ma_chaine). Cependant par sécurité j'applique les foncitons php htmlentities() et addslashes() ce qui à pour effet d'ajouter des caractères s'il s'agit de caractères dit spéciaux !
Solution faire un strlen avant ces fonctions ! puis appliquer les fonctions après pour enregistrer dans la base de données une source fiable et n'avoir plus qu'a la récupérer pour un affichage (opération la plus courante)...Le problème est que la taille de mon champ de la table est logiquement limité ! Donc si je suppose par exemple qu'un prénom ne dépasse pas les 10 caractères je définis la taille de ma table à 10 caractères.
Si un utilisateur s'appel: azertyuioé
le premier strlen est de 10 ! Donc impecable ! mais si l'on refais un strlen après les fonctions il en fera 16 (en prenant é = 7 caractères pour que l'on est tous les même base car je ne sais plus combien c'est pas defaut, bref..).
Donc comment régler ce petit soucis ?
La meilleur solution consisterait-elle à agrandir la longueur du champ, par exemple 50 caractères et limiter au niveau code...
(en fait au en écrivant ce post, je me donne la réponse je crois...
)
marchi!!!
je souhaite compter le nombre de caractère d'une chaine receptionné par un formulaire. Je fais donc un strlen($ma_chaine). Cependant par sécurité j'applique les foncitons php htmlentities() et addslashes() ce qui à pour effet d'ajouter des caractères s'il s'agit de caractères dit spéciaux !
Solution faire un strlen avant ces fonctions ! puis appliquer les fonctions après pour enregistrer dans la base de données une source fiable et n'avoir plus qu'a la récupérer pour un affichage (opération la plus courante)...Le problème est que la taille de mon champ de la table est logiquement limité ! Donc si je suppose par exemple qu'un prénom ne dépasse pas les 10 caractères je définis la taille de ma table à 10 caractères.
Si un utilisateur s'appel: azertyuioé
le premier strlen est de 10 ! Donc impecable ! mais si l'on refais un strlen après les fonctions il en fera 16 (en prenant é = 7 caractères pour que l'on est tous les même base car je ne sais plus combien c'est pas defaut, bref..).
Donc comment régler ce petit soucis ?
La meilleur solution consisterait-elle à agrandir la longueur du champ, par exemple 50 caractères et limiter au niveau code...
(en fait au en écrivant ce post, je me donne la réponse je crois...
marchi!!!
-

Fab le Fou - WRInaute accro

- Messages: 1511
- Inscription: Jeu Déc 02, 2004 15:20
Je comprends ton problème.
J'ai eu le même soucis avec un mot de passe qui une fois crypté n'avait plus le même nombre de caractères.
Je ne vois pas de solution simple, puisqu'à priori tu ne sais pas ce que va saisir la personne, donc combien de caractères vont être remplacés.
En fait, tu mets des champs sans préciser à priori le nombre de caractères max et tu lui dis à posteriori que sa saisie est trop longue (mais il ne va pas comprendre).
Autre solution : tu enregistres les données sans les modifier et les traite au moment où tu vas t'en servir.
Je ne pense pas que les données soient dangereuses tant qu'elles sont dans la base ?
J'ai eu le même soucis avec un mot de passe qui une fois crypté n'avait plus le même nombre de caractères.
Je ne vois pas de solution simple, puisqu'à priori tu ne sais pas ce que va saisir la personne, donc combien de caractères vont être remplacés.
En fait, tu mets des champs sans préciser à priori le nombre de caractères max et tu lui dis à posteriori que sa saisie est trop longue (mais il ne va pas comprendre).
Autre solution : tu enregistres les données sans les modifier et les traite au moment où tu vas t'en servir.
Je ne pense pas que les données soient dangereuses tant qu'elles sont dans la base ?
Je fais a présent pareil ! Cela évite beaucoup de complication...
Grace à l'aide précieuse de sgaze j'ai pu répondre à beaucoup de mes quesitons. Merci encore
Cela pourra sans doute aider quelqu'un d'autre:
http://www.webrankinfo.com/forums/viewtopic_41793.htm
Grace à l'aide précieuse de sgaze j'ai pu répondre à beaucoup de mes quesitons. Merci encore
Cela pourra sans doute aider quelqu'un d'autre:
http://www.webrankinfo.com/forums/viewtopic_41793.htm
Pourquoi utiliser htmlentities sur des pseudos ? strip_tags est nettement plus utile pour ce genre d'utilisation.
- Code: Tout sélectionner
$pseudo = strip_tags( $_REQUEST['pseudo'] );
if( strlen( $pseudo ) < 10 ) {
$sql = "INSERT INTO matable (pseudo) VALUES( '".mysql_real_escape_string( $pseudo )."' )';
}
10 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Google compter lever entre 2 et 3 milliards de dollars
- Liste complète des paramètres utilisés par Google Search (variables dans l'URL)
- Le début du full crawl
- Robots.txt : Yahoo supporte les options avancées
- Nombre moyen de mots par requête : statistiques AOL Août 2006
- Google Sitemap Generator version 1.3
- Customize Google (extension Firefox)
- Référencement : TrustRank et sites dignes de confiance
- Google achète l'ile GoGooroa
- Conseils d'optimisation de la balise TITLE (titre d'une page HTML)
- Calcul du nombre de backlinks
Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées. - Analyseur de densité
Cet outil vous permet de calculer l'indice de densité d'un mot-clé d'une page web. Il est calculé à la fois pour la balise TITLE, la balise META description et l'ensemble du texte de la page.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités




le forum