Probleme adresse mail

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Probleme adresse mail

par kenshin » 05 oct. 2005, 12:56

Ok merci a tous.

C'est fini, j'ai modifié chaque adresse mail en ajoutant un mailto.

La prochaine fois, je ferais des champs separés pour chaque données, c'est beaucoup plus souple et pratique.

Bonne journée.

par DocType » 05 oct. 2005, 11:40

Merci Cyrano,
mais la difficulté réside dans le fait je n'ai pas de champ "mail" dans ma BDD mais un champ "contact" qui contient les noms, tel et mail !
ce n'est pas un champ contact alors mais un champ fourre-tout.
C'est l'exemple type de ce qu'il ne faut pas faire.

Je te déconseille fortement de t'amuser à mettre des mailto dans ce champ comme proposé par PRoGRaFLaSH.
Tu as déjà le bordel dans ce champ, ca ne va pas l'arranger.
Je te conseille de créer un champ mail et de faire un script qui extraira l'adresse email de ton champ foure-tout pour la mettre dans le bon champ, idem avec les autres données.
C'est la bonne solution de séparer, mais apparemment il a pas l'air chaud pour le faire :roll: Donc au final on donne une solution comme une autre :roll:
Et pas rapport au bazar que ca doit être, ce sera pas pire...
On a bien le bbcode pour les forums, et le bbcode et dans la base de données.

Enfin, la solution a été apportée vis à vis de sa demande qui était, je le rappelle, le passage d'une adresse email non cliquable en "directement cliquable". Cela se peut qu'il s'agisse d'un champ global pour une description de la personne, avec un espèce de bbcode pour adresse email comme si on mettait une url dans un post sous phpbb qui est directement convertie en "cliquable". :roll:

par pjl » 05 oct. 2005, 10:16

Merci Cyrano,
mais la difficulté réside dans le fait je n'ai pas de champ "mail" dans ma BDD mais un champ "contact" qui contient les noms, tel et mail !
ce n'est pas un champ contact alors mais un champ fourre-tout.
C'est l'exemple type de ce qu'il ne faut pas faire.

Je te déconseille fortement de t'amuser à mettre des mailto dans ce champ comme proposé par PRoGRaFLaSH.
Tu as déjà le bordel dans ce champ, ca ne va pas l'arranger.
Je te conseille de créer un champ mail et de faire un script qui extraira l'adresse email de ton champ foure-tout pour la mettre dans le bon champ, idem avec les autres données.

par Cyrano » 05 oct. 2005, 09:39

Regarde sur les tutos de PHPFrance, Ripat nous a fait un beau tuto sur le sujet et je crois même qu'il y a un exemple pour les adresses de courriel.

par DocType » 05 oct. 2005, 09:19

Ok, le message est passé...

Je n'arrive pas à trouver l'expression reuguliere qui pourrait faire ca !?
et un Big Mac SVP :lol:

par kenshin » 05 oct. 2005, 09:13

Ok, le message est passé...

Je n'arrive pas à trouver l'expression reuguliere qui pourrait faire ca !?

par Cyrano » 05 oct. 2005, 09:11

C'est ça, alors tourne-toi vers les expressions régulières et la fonction preg_replace()

par kenshin » 05 oct. 2005, 09:07

Merci Cyrano,
mais la difficulté réside dans le fait je n'ai pas de champ "mail" dans ma BDD mais un champ "contact" qui contient les noms, tel et mail !

par Cyrano » 05 oct. 2005, 09:07

Si l'adresse est incluse DANS le texte, alors il faut passer par une expression régulière, mais ce n'est pas nécessairement très logique d'enregistrer tout en vrac.

par DocType » 05 oct. 2005, 09:04

Cyrano, lorsqu'il dit :
j'ai un champ contact qui contient plein de nom et l'adresse mail de ces personnes
Je comprends pour ma part qu'il y a un champ texte contenant tout plein d'infos dont l'adresse mail, donc faut obligatoirement retrouver où est cette adresse dans le champ texte... :roll:

par Cyrano » 05 oct. 2005, 08:59

Il n'est pas nécessaire de modifier les champs dans la base. Il suffit de mettre les balises de lien et d'y insérer l'adresse:
//... code de récupération du contact ...
while($ligne = mysql_fetch_assoc($requete))
{
    //.....
    echo("<p>Pour joindre ". $ligne['prenom'] ." ". $ligne['nom'] ." : <a href=\"mailto:". $ligne['courriel'] ."\" alt=\"Envoyez un courriel\">". $ligne['courriel'] ."</a></p>\n");
    //......
}
Si la validation de l'adresse a été correctement faire avant l'insertion dans la base,il est inutile de la valider à nouveau :)

par DocType » 05 oct. 2005, 08:56

ba tout simplement tu créé (et oui, faut taffer quelquefois :lol: ) un script qui permettent de lister ligne apres ligne (un while) ta table et de rechercher les adresses mail (comme expliqué au dessus), de remplacer l'expression email par l'encadrement souhaité :wink:
Tous tes champs seront alors modifiés, t'auras plus qu'à contrôler les futures modifs et ajouts

par kenshin » 05 oct. 2005, 08:35

Je comprends pas ...

Tu veux que je change tous manuellement ds ma base ou tu connais un script php qui fait ca automatiquement?

Je pense qu'il faut chercher du coté des expressions reguliere..non?

par DocType » 05 oct. 2005, 08:30

Tu fais la fonction toi même :wink:
M'enfin, c'est bête de réagir comme cela car avec un script PHP tu règle le problème de suite ==> tu update toute ta bdd en rajoutant dans les champs des <a href etc... et ensuite à chaque ajout ou modif, tu verifie lors des envois... :roll:

par kenshin » 05 oct. 2005, 08:20

Ces trop lourd d'aller changer tous les champs contacts et mettre des mailto.
Donc je voudrais rechercher les mots contenant un '@' et rajouter "<a href='mailto:" avant et "</a>" apres.
Comment faire? Quel fonction php?