Ereg Eregi ??

Répondre
cyne
le 02/02/2010 à 00:49
cyne
Bonjour,

je butte sur un message d'erreur :

Deprecated: Function ereg() is deprecated in C:\Program Files\EasyPHP5.3.0\www\Espace_membre\membres\Login.php on line 78


et voici la ligne 78 et suivantes

if (ereg("nom",$clé))                                  #78
{
if (!ereg("^[A-Za-z' éèêëàâîïôûùü-]{1,50}$",
stripslashes($valeur)))
{
unset($_GET['do']);
$message_new = "$clé n'est pas un nom valide.
Corrigez, svp.";
include("login_form.inc");
exit();


Qui peut me débloquer?
Merci
FP
cyne
le 03/02/2010 à 13:51
cyne
La Globule,

J'ai remplacé ereg par preg_match et voici le message que j'ai à présent :

Warning : preg_match():Delimiter must not be alphanumeric or backslash on line 78.


il ne suffit donc pas de remplacer le nom de la fonction?
FP
cyne
le 03/02/2010 à 21:45
cyne
merci mais j'ai lu la doc...que tu m'avais mise en lien. Seulement, c'est un peu trop technique à comprendre... $pattern, $subject, pourquoi ils mettent des dollars?,

Si ça remplace la fonction ereg obsolète pourquoi n'a t'on pas un exemple qui explique en bon français ce qui change? en mettant les 2 cas en parallèle.

smileyje vais checher un forum pour les triple nuls...
FP
LA GLOBULE
le 03/02/2010 à 22:00
LA GLOBULE
Si tu ne sais pas ce à quoi servent les dollar en PHP, c'est chaud :)

$pattern, $subject, ce sont les paramètres de la fonction. Et seuls ces 2 paramètres sont obligatoires (les autres sont optionnels).
ereg aussi avait deux paramètres, les mêmes en fait.

Le truc, c'est que pour les fonctions preg_*, la syntaxe du masque de recherche change un peu.
Et ca, ca ne s'invente pas, la documentation explique tout, et en francais en plus, et avec des exemples :)
Je pense juste que tu penses que c'est une perte de temps de passer 1h à lire de la doc, c'est dommage :/

Mais sinon, ton soucis, c'est qu'il te manque des délimiteurs à ton masque d'expression régulière.

Exemple : preg_match("`^[A-Za-z' éèêëàâîïôûùü-]{1,50}$`", stripslashes($valeur))) devrait mieux fonctionner.
cyne
le 03/02/2010 à 22:48
cyne
Ah non! La globule. Tout ce que tu veux mais ne pense pas que je pense ce que tu penses!
J'ai passé plus d'une heure à lire cette doc et d'autres sur preg_* et j'ai testé pleins de choses avant d'écrire ici.
Un dollar pour moi, c'est une variable et dans mon code, lorsque j'ai : "nom" je n'ai pas de dollar, du coup je suis perdu.

Certes une fois que j'ai une réponse sous les yeux et avec tout ce que j'ai lu avant!,je comprends (enfin je crois comprendre) qu'il ne faut plus utiliser "nom" mais dire quels sont les caractères autorisés...
Bref, c'est une sacré gymnastique et il ne suffit pas de ne pas être fainéant...

Merci tout de même de tes réponses
FP
LupusMic
le 04/02/2010 à 07:14
LupusMic
(La Globule) Obsolète toi-même :p « Déconseillée » est la traduction ad hoc. Je pense que cyne parlait des $ dans les masques.

(cyne) Un bon programmeur est fainéant par nature : nous faisons le maximum pour en faire le minimum. Ben oui, nous cherchons toujours à automatiser le temps que nous demande une tâche. C'est intrinsèque à notre métier. C'est pour ça aussi que nous aimons rappeler aux quémandeurs de RTFM. Paraphraser la documentation n'a que peu d'intérêt, et représente un temps perdu non-négligeable. :)

En ce qui concerne ton problème, il me faut te prévenir : les regexp, c'est un *gros* morceau. Je les adore et pourtant je continue à en apprendre quotidiennement. Alors plutôt qu'une heure, c'est une demi-journée d'entraînement par laquelle tu devrais commencer. Lance-toi des petits défis, tels que vérifier la validité d'un ISBN ou encore la construction d'une date. Ça semble trivial, et pourtant... (surtout pour les dates)

En ce qui concerne la syntaxe des masques, tout est expliqué dans la documentation sur les PCRE. C'est très riche, la difficulté ici est de retenir ce dont tu auras besoin.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
cyne
le 04/02/2010 à 07:49
cyne
J'aime assez ton analyse lupusmic.
Je me rends compte d'une chose, c'est que malgré la bonne volonté, il faut connaître les bases et n'est pas développeur qui veut...
J'ai un projet qui demande plus de connaissances que j'en ai et il faut que je trouve un développeur intéressé par le développement et la rentabilité qui peut découler de la qualité des services proposés
Il faut que je creuse cette piste sur des forums adéquats
FP
LupusMic
le 08/02/2010 à 01:11
LupusMic
Ne baisse pas les bras. Oui c'est compliqué, mais c'est ce qui est marrant. De plus tu comprends et prends conscience de tes limites techniques : tu sais donc quoi apprendre. Et pour finir, ce n'est qu'en pratiquant et en te trompant que tu progresseras. Si ça te gêne d'en parler publiquement, tu peux me contacter par courriel mickael@lupusmic.org
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours