Mail d'invitation fonctionne pas si le pseudo a des chiffres

Résolu
pascal199 Messages postés 16 Date d'inscription mardi 6 avril 2010 Statut Membre Dernière intervention 21 mai 2012 - 20 mai 2012 à 21:09
Lyle56 Messages postés 240 Date d'inscription jeudi 1 mai 2008 Statut Membre Dernière intervention 19 juillet 2012 - 22 mai 2012 à 09:20
Bonjour à tous, voila mon problème.
Quand je veus invité quelqu'un sur mon site, et si mon pseudo comporte des chiffres, l'invitation ne part pas, que avec un pseudo sans chiffre cela fonctionne.
Voila le php, et merci de votre aide .


<?

include "include/config-recommandation.inc.php";
include("include/connexion.php");
include("include/verif_session.php");



function getPetite($photo){
$petite = explode(".",$photo);
$petite = $petite[0]."_450.".$petite[1];
return $petite;
}


$select = "SELECT * FROM membre WHERE id='$idUser'";
$query = mysql_query($select,$SQLConnection);
$row = mysql_fetch_array($query);
$pseudo =$row[pseudo];

?>








" text="<? echo $fontcolor; ?>">

<?php

if((isset($submit))&&(@ereg(".[[:alpha:]]{2}([[:alpha:]]?)$", $pseudo)))
{
if(@ereg(".+(@.+)(.[[:alpha:]]{2}([[:alpha:]]?))$", $email1))
{$email1=$email1;}
else {unset($email1); unset($dest1);}



$selectphoto = "SELECT * FROM photo_upload WHERE id_user='$row[id]' AND profil='1'";
$queryphoto = mysql_query($selectphoto,$SQLConnection);
$rowphoto = mysql_fetch_array($queryphoto);

if(isset($email1))
{
mail($email1, "

$url", "\n Notre membre ($pseudo) , vient de vous inviter sur notre site http://restecool.be

Vous connaissez sûrement cette personne qui connait votre adresse email .

Vous pouvez voir la photo de $pseudo à cette adresse si dessous:\n http://restecool.be".getPetite($rowphoto[lien_petite])."

Vous pouvez toujours nous faire une petite visite, si vous ne connaissez pas l'expéditeur.

Merci à vous.\n\nhttp://restecool.be\n\n");
}




?>
\" align=\"center\">
----

Merci
<? echo $pseudo; ?>

Votre invitation vient d'être envoyer à:
<? echo $email1; ?>

Un lien vers notres site serras ajouter à l'invitation

onglet" href="AAA.php">

<?
}
else
{
?>
<form method="post" action="AAA.php">
\" align=\"center\">

----

" align="center"><? echo $font; ?>Email destinataire,

----

" align="center">">,

----

" align="center"><? echo $font; ?>
Votre pseudo,

----

" align="center">">,

----

" align="center">

,
" align="center" colspan="2"><? echo $font; ?>

</form>

<?
}
?>

5 réponses

Lyle56 Messages postés 240 Date d'inscription jeudi 1 mai 2008 Statut Membre Dernière intervention 19 juillet 2012 2
21 mai 2012 à 15:25
Bonjour,

Réponse rapide,
Même pas besoin de coloration pour voir que ton pattern regex n'est pas bon. Tu exclus automatiquement les mail avec des chiffres...
[:alpha:] c'est uniquement les lettre en Minuscule et Majuscule...
il faut utilise [:alnum:] sur les portions qui autorise les chiffres sans oublié d'ajouter les caractères spéciaux autorisés ( '_' et '-' ).



Sans maitrise, la puissance n'est rien
Il ne faut pas vendre la peau de l'ours, non il ne faut pas.
3
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
20 mai 2012 à 22:53
Bonjour,

Lis et applique le point 2 de ma signature.

As-tu vérifié les valeurs des variables pour l'envoi ?

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
pascal199 Messages postés 16 Date d'inscription mardi 6 avril 2010 Statut Membre Dernière intervention 21 mai 2012
21 mai 2012 à 08:57
RE: NHenry

Si tu lie bien c'est pas une question de variables, c'est une question de chiffres dans un pseudo

Et quand on poste un code, merci d'utiliser la coloration syntaxique (je le voie pas cette icon) donc avant de dire quelque chose, faut savoir se que je voie sur mon écran
0
pascal199 Messages postés 16 Date d'inscription mardi 6 avril 2010 Statut Membre Dernière intervention 21 mai 2012
21 mai 2012 à 20:36
RE.
On a trouver et rien a voir avec le [:alpha:] parce cassiment tout mes membres on une adresse email avec des chiffres et pseudo avec chiffres, donc on a trouver, merci quand même de votre aide ;)
Voila la modification

if ((isset($_POST["submit"])) && (isset($_POST["pseudo"])))

et dans la partie email on a rien changer et cela marche avec [:alpha:]
donc je le probleme vient pas de [:alpha:] sinon on pourrait pas envoyer d'invitation a des adresse avec chiffres (que ca fonctionne ;) )

Merci quand même de ton aide Lyle56
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Lyle56 Messages postés 240 Date d'inscription jeudi 1 mai 2008 Statut Membre Dernière intervention 19 juillet 2012 2
22 mai 2012 à 09:20
@Pascal : De rien,
J'ai tester tes expressions avec http://rubular.com/

Effectivement ça passe, pourtant je suis sur une doc "officielle" qui me dit que ça ne devrais pas passer. Par contre cela ne contrôle pas vraiment l'adresse. Sur une adresse en .com et l'autre en .fr tu n'obtiens pas la même chose en sortie. Tu récupère toujours les 3 derniers caractères, donc le point se balade soit dans le nom de domaine sans dans l'extension, ce qui n'est pas forcément correct.

Une adresse -lyle56@un.ma*$il.fr va passer, alors que cela ne devrais jamais pas être le cas.
De même si tu est en php5, la fonction ereg est obsolète, utilise plutôt preg_match.



Sans maitrise, la puissance n'est rien
Il ne faut pas vendre la peau de l'ours, non il ne faut pas.
0
Rejoignez-nous