Adresse Mail

Eléphant du PHP | 54 Messages

23 janv. 2007, 11:58

Bonjour bonjour,

Voila, j'ai un soucis avec mon code :

PHP :
<!doctype html public "-//W3C//DTD HTML 4.0 //EN"> 
<html>
<head>
       <title>Confirmation d'ajout</title>
</head>
<body>
<?
include "config.php";

$prenom = $_POST['prenom'];
$nom 	= $_POST['nom']; 
$mail_p = $_POST['mail_pr'];

if ( $_POST['adresse'] == "Oui" )
	{ $mail = ".\nAdresse : ".$prenom{0}"&.".$nom."@xxx.com"; }
	else $mail = "";

//connection à mysql
$connect = mysql_connect("$user","$login","$pwd");
mysql_select_db($NomBase,$connect);
$requete = "select * from $NomTable;";
$res = mysql_db_query($NomBase,$requete,$connect);
$nbres = mysql_num_rows($res);

mysql_query("INSERT INTO `collab` ( `nom` , `prenom` , `mail_pr` ) VALUES ('$nom','$prenom','$mail_p') ") or die ("erreur insert ".mysql_error());
mysql_close($connect);
//fin de la connection
?>

</body>
</html>
HTML :

Code : Tout sélectionner

<html> <head> <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"> <title>Formulaire </title> <? include "config.php"; ?> <td align="center" valign="top"><h2>Formulaire d'arrivée</h2></td> </tr> </table> <? include "menu_nord.php"; ?> <form method="post" name="form" action="ajout_nord.php" onsubmit="return verif_arriv()" > <table> <tr> <td><p class="txt"><img src="images/info.png" title="nom" alt="Nom"> &nbsp;&nbsp;&nbsp;Nom :</p></td> <td><input type=text name="nom"> <img src="images/important.png" alt="important" title="important"> </td> </tr> <tr> <td><p class="txt"><img src="images/info.png" title="prénom" alt="Prénom"> &nbsp;&nbsp;&nbsp;Prénom :</p></td> <td><input type=text name="prenom"> <img src="images/important.png" alt="important" title="important"> </td> </tr> </tr> <tr> <td> <p class="txt"> <img src=images/mail.png title="mail" alt="Création d'une Messagerie"> &nbsp;&nbsp;&nbsp;Création d'une Messagerie :</p></td> <td> <SELECT NAME="adresse"> <option>Mail ?</option> <option>Oui</option> <option>Non</option> </SELECT> <img src="images/important.png" alt="important" title="important"> </td> <td> <span class="txt">eMail : <INPUT type="text" name="mail_pr"size="28"></span> </td> </tr> </html>
Et en fait je voudrais que dans textebox du "mail_pr" apparaisse la premiere lettre du prénom suivie du nom avec @xxx.com
quand on choisie la case oui :/

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

23 janv. 2007, 12:11

Et en fait je voudrais que dans textebox du "mail_pr" apparaisse la premiere lettre du prénom suivie du nom avec @xxx.com
quand on choisie la case oui :/
Et qu'est-ce qu'il se passe pour le moment ?

N'aie pas peur d'en dire trop :)

Eléphant du PHP | 54 Messages

23 janv. 2007, 12:13

Et bien en faite il me crée bien ce que je veux dans la base de donnée,
c'est à dire le premiere lettre du prenom et le nom, mais en faite je voudrais qu'il soit visible sur le champ du texte box, et que l'utilisateur ne puisse pas la modifier.

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

23 janv. 2007, 12:35

Pour donner une valeur par défaut à un champ texte c'est l'attribut "value".

Cherche ensuite qqchose comme ""désactiver champ" dans le forum.

Eléphant du PHP | 54 Messages

23 janv. 2007, 12:40

Oui, j'ai essayer de mettre value=...

mais je ne sais pas quoi mettre dedans étant donner que je veux récupérer le $mail la dedans :/
$mail =$prenom{0}.".".$nom."@xxx.com";

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

23 janv. 2007, 12:45

C'est plutôt vers du javascript qu'il faut te tourner si tu veux faire ça en dynamique.

Sur l'action onChange="" du select, si la valeur est "oui", il te faut alors mettre à jour ton champ email en récupérant les valeurs des autres champs

Code : Tout sélectionner

document.nom_du_form.nom_du_champ.value = ...
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 65 Messages

23 janv. 2007, 12:50

pour qu'on puisse uniquement lire tu peu utiliser <input disabled name="nomdechamp" value="test"> disabled aura pour effet de griser le texte qui ne pourra pas etre modifié.
Si non tu peu utiliser READONLY egalement dans la balise input, avec readonly le text ne sera pas grisé, il sera normal mais pas modifiable.
pour ce qui est de la récuperation de tes variables il faut utiliser la fonction html "value" qui attribue une valeur par defaut dans ton champs

Code : Tout sélectionner

<INPUT type="text" name="mail_pr" value="<?php echo $var ?>" size="28">
un truc dans le genre

Invité
Invité n'ayant pas de compte PHPfrance

23 janv. 2007, 13:10

Merci pour desactiver le texte box c'étais bien ça :)

Par contre pour récupérer ma variable le code à l'air bon mais vu que se sont deux fichier différents je crois qu'il ne la trouve pas, sa me met dansle texte box :

Code : Tout sélectionner

<br /><b>Notice</b>: Undefined variable: mail_proxiad in <b>c:\app1\add.php</b> on line <b>69</b><br />
vu que mon fichier c'est ajout.php :/

Eléphant du PHP | 54 Messages

23 janv. 2007, 14:45

Oups désoler pour mon post précédant j'étais pas log :twisted:

Sinon j'ai à peu près réussit à faire se que je voulez mais, j'obtiens une erreur que je n'arrive pas à trouver :/
	//On fais les tests
if ( $_POST['adresse'] == "Oui" )
	//on place tous les caractère ne minuscule.	
	$prenom = strtolower($prenom);
	$nom = strtolower($nom);	
	//On concatène la première lettre du prenom et on ajoute le nom
	{ $mail =$prenom{0}.".".$nom."@xxx.com"; }	
	else $mail = "";
Et il me renvoie cette erreur lors de l'envoie du formulaire :/

Code : Tout sélectionner

Parse error: parse error in c:\app1\ajout_nord.php on line 34
Sa doit être tous bête mais je vois pas ^^

PS : si sa peux vous aider la ligne 34 c'est :
else $mail = "";

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

23 janv. 2007, 15:26

Tu aurais trouvé tout seul ce que t'a donné abricot en cherchant sur le forum comme je te l'avais dis. Un truc simple comme ça, déjà dis pleins de fois, ça se retrouve facilement.

Ton erreur est une erreur de syntaxe, regarde ton if, regarde ton else ainsi que les accolades. Personnellement quelque chose me choque. Si toi non, regarde la doc du if : http://fr.php.net/if

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

23 janv. 2007, 15:29

Une parse error est une erreur de syntaxe : un point virgule absent, une parenthèse mal équilibrée... la ligne indiqué est celle qui révèle le problème, celui-ci étant généralement quelques lignes plus haut...

Jette un coup d'oeil à tes accolades et à ton if/else puisque c'est lui qui soulève l'erreur, la solution devrait venir toute seule :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Invité
Invité n'ayant pas de compte PHPfrance

23 janv. 2007, 15:56

Effectivement sa marche beaucoup mieux :D merci ^^