Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/12/2007, 01h50   #1
Membre actif
 
Avatar de witch
 
Mina Essabbeur
Inscription : mai 2007
Messages : 345
Détails du profil
Informations personnelles :
Nom : Mina Essabbeur
Âge : 25

Informations forums :
Inscription : mai 2007
Messages : 345
Points : 178
Points : 178
Envoyer un message via MSN à witch
Par défaut preg_match pour recuperer une chaine alphanumérique

Salut,
toujours mon probleme de soustraction des donnés avec les regexp
j'utilise preg_match pour avoir comme donné juste une chaine alphanumérique de dix caractères
j'ai essayé avec ça
Code :
1
2
3
4
$str='popi454jihjgh';
$ret=array();
preg_match('/^[a-zA-Z0-9@]{0,9}$/i',$str,$ret);
print_r($ret);
et de cette façon aussi
Code :
1
2
3
$reg='/^[a-zA-Z0-9]{0,10}$/i';
preg_match($reg,substr($str,10),$results,PREG_OFFSET_CAPTURE);
print_r($results);
mais ça m'envoie juste ça : Array()
en fait, c'est pour gerer le probleme d'injection sql
j'ai pas arrivé à trouvé la bonne syntaxe
__________________
You probably have a very easy job, the kind robots will be doing soon.
witch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 07h09   #2
Membre actif
 
Inscription : janvier 2006
Messages : 149
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : janvier 2006
Messages : 149
Points : 186
Points : 186
Les injections MySQL s'évitent avec mysql_real_escape_string() ...
Vell est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 08h10   #3
Membre actif
 
Avatar de witch
 
Mina Essabbeur
Inscription : mai 2007
Messages : 345
Détails du profil
Informations personnelles :
Nom : Mina Essabbeur
Âge : 25

Informations forums :
Inscription : mai 2007
Messages : 345
Points : 178
Points : 178
Envoyer un message via MSN à witch
je crois que ça sera mieux avec une regexp et puis mysql_escape_string ne marche pas pour moi avec le serveur apache de la version : 5.0.45
et puis je veux savoir ce qui ne va pas avec cette regexp
merci
__________________
You probably have a very easy job, the kind robots will be doing soon.
witch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 09h01   #4
Membre éprouvé
 
Avatar de Schmorgluck
 
Inscription : mai 2006
Messages : 349
Détails du profil
Informations personnelles :
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : mai 2006
Messages : 349
Points : 435
Points : 435
Page de manuel de preg_match, ça peut servir.
En gros, si le programme te renvoie Array(), c'est tout bêtement parce que $result (ou $ret dans le premier cas) est effectivement un array.
__________________
There's nothing like $HOME!
Schmorgluck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 12h36   #5
Membre actif
 
Inscription : janvier 2006
Messages : 149
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : janvier 2006
Messages : 149
Points : 186
Points : 186
Citation:
Envoyé par witch17 Voir le message
je crois que ça sera mieux avec une regexp et puis mysql_escape_string ne marche pas pour moi avec le serveur apache de la version : 5.0.45
et puis je veux savoir ce qui ne va pas avec cette regexp
merci
1 - Ce n'est jamais mieux avec les expressions régulières car elles sont beaucoup plus gourmandes que les fonctions natives !

2 - mysql_real_escape_string() (et non mysql_escape_string() ) n'a rien à voir avec Apache. Tu voulais peut-être dire php ? En tout cas ça fonctionne avec php5.

3 - Enlève l'accent circonflexe du début de chaîne ainsi que le dollar de fin de chaîne.
Vell est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 16h38   #6
Membre actif
 
Avatar de witch
 
Mina Essabbeur
Inscription : mai 2007
Messages : 345
Détails du profil
Informations personnelles :
Nom : Mina Essabbeur
Âge : 25

Informations forums :
Inscription : mai 2007
Messages : 345
Points : 178
Points : 178
Envoyer un message via MSN à witch
ok j'utilise ça, mais j'insiste toujours sur l'utilisation de la regexp..histoire de savoir ce que c'est
et puis, tu disais "n'a rien à voir avec Apache. Tu voulais peut-être dire php"
ben c'est au serveur finalement d'autoriser ou pas un accès au variables globales..non?
__________________
You probably have a very easy job, the kind robots will be doing soon.
witch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 17h31   #7
Membre actif
 
Inscription : janvier 2006
Messages : 149
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : janvier 2006
Messages : 149
Points : 186
Points : 186
Il n'y a aucun rapport avec les variables globales.

S'il te plaît, rends-toi sur la documentation officielle pour mieux comprendre, plutôt que de te prendre la tête.

http://www.php.net/mysql_real_escape_string

Et pour les regex : http://www.expreg.com
Vell est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h07.


 
 
 
 
Partenaires

Hébergement Web