Page 1 sur 1

Adresse Mail

Posté : 23 janv. 2007, 11:58
par Dexion
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 :/

Re: Adresse Mail

Posté : 23 janv. 2007, 12:11
par ouckileou
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 :)

Posté : 23 janv. 2007, 12:13
par Dexion
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.

Posté : 23 janv. 2007, 12:35
par ouckileou
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.

Posté : 23 janv. 2007, 12:40
par Dexion
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";

Posté : 23 janv. 2007, 12:45
par Ryle
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 = ...

Posté : 23 janv. 2007, 12:50
par abricot
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

Posté : 23 janv. 2007, 13:10
par Invité
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 :/

Posté : 23 janv. 2007, 14:45
par Dexion
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 = "";

Posté : 23 janv. 2007, 15:26
par ouckileou
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

Posté : 23 janv. 2007, 15:29
par Ryle
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 :)

Posté : 23 janv. 2007, 15:56
par Invité
Effectivement sa marche beaucoup mieux :D merci ^^