Mon code est foireux, le check de l'email ne se fait pas... quelqu'un peut m'aid

Deep_h - 27 sept. 2012 à 18:19
 Deep_h - 22 oct. 2012 à 18:57
hello tout le monde,

j'ai un formulaire que je désire mettre sur mon site..mais voilà, 1er formulaire, et première connexion a une base de donnée, comme quoi y a un début a tout...

la connexion base de donnée est OK, mais mon formulaire manque un peu de rigidité... au stade qu'il enregistre même si on mets n'inmporte quoi dans le champs email.. alors que je désire qu'il y ai une vérification à ce niveau,...quelqu'un peut m'aider ?

voici le code de ma page:

merci de votre aide ;o)

<?php
// on teste si le visiteur a soumis le formulaire
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {
// on teste l'existence de nos variables. On teste également si elles ne sont pas vides
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm'])) && (isset($_POST['email']) && !empty($_POST['email'])) && (isset($_POST['question1']) && !empty($_POST['question1'])) && (isset($_POST['question2']) && !empty($_POST['question2']))) {

// on teste les deux mots de passe
if ($_POST['pass'] != $_POST['pass_confirm']) {
$erreur = 'Lee mots de passe sont différents.';
}
else {
$base = mysql_connect ('--.---.---.---', 'user db', 'pw db');
mysql_select_db ('db', $base);

// on recherche si ce login est déjà utilisé par un autre membre
$sql = 'SELECT count(*) FROM member WHERE login="'.mysql_escape_string($_POST['login']).'"';
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_array($req);

if ($data[0] == 0) {
$sql = 'INSERT INTO member VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.mysql_escape_string(md5($_POST['pass'])).'", "'.mysql_escape_string($_POST['type']).'", "'.mysql_escape_string($_POST['names']).'", "'.mysql_escape_string($_POST['firstname']).'", "'.mysql_escape_string($_POST['birth_day']).'", "'.mysql_escape_string($_POST['birth_month']).'", "'.mysql_escape_string($_POST['birth_year']).'", "'.mysql_escape_string($_POST['address1']).'", "'.mysql_escape_string($_POST['address2']).'", "'.mysql_escape_string($_POST['job']).'", "'.mysql_escape_string($_POST['code_postal']).'", "'.mysql_escape_string($_POST['city']).'", "'.mysql_escape_string($_POST['state']).'", "'.mysql_escape_string($_POST['country']).'", "'.mysql_escape_string($_POST['email']).'", "'.mysql_escape_string($_POST['phone']).'", "'.mysql_escape_string($_POST['mobile']).'", "'.mysql_escape_string($_POST['skype']).'", "'.mysql_escape_string($_POST['question4']).'", "'.mysql_escape_string($_POST['question1']).'", "'.mysql_escape_string($_POST['question2']).'", "'.mysql_escape_string($_POST['question3']).'", "'.mysql_escape_string($_POST['question5']).'", "'.mysql_escape_string($_POST['comment']).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error());

//On verifie si lemail est valide
if(preg_match("#^[a-z0-9._-]{1,}@[a-z0-9._-]{2,}\.[a-z]{2,4}$#",$_POST['Email']))


$atom = '[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]'; // caractères autorisés avant l'arobase
$domain = '([a-z0-9]([-a-z0-9]*[a-z0-9]+)?)'; // caractères autorisés après l'arobase (nom de domaine)

$regex = '/^' . $atom . '+' . // Une ou plusieurs fois les caractères autorisés avant l'arobase
'(\.' . $atom . '+)*' . // Suivis par zéro point ou plus
// séparés par des caractères autorisés avant l'arobase
'@' . // Suivis d'un arobase
'(' . $domain . '{1,63}\.)+' . // Suivis par 1 à 63 caractères autorisés pour le nom de domaine
// séparés par des points
$domain . '{2,63}$/i'; // Suivi de 2 à 63 caractères autorisés pour le nom de domaine
// test de l'adresse e-mail
if (preg_match($regex, $email)) {
echo "L'adresse e-mail $email est valide";
} else {
echo "L'adresse e-mail $email n'est pas valide";
}

session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: member.php');
exit();

}
else {
$erreur = 'Member utilise déjà ce pseudo.';
}
}
}
else {
$erreur = 'Il y au moins un champs vide';
}
}

?>
<html>
<script src="/common/edel.js" type="text/javascript"></script>
<link href="../common/edel.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
body {
margin-left: 3px;
margin-top: 5px;
margin-right: 0px;
margin-bottom: 0px;
background-image: url(images/bg_8.jpg);
}

A:link {text-decoration: none;}
A:visited {text-decoration: none; font-family: Verdana, Arial, Helvetica, sans-serif}
A:active {text-decoration: none; color: dbdbdb; font-family: Verdana, Arial, Helvetica, sans-serif}
A:hover {text-decoration: underline; color: dbdbdb; font-family: Verdana, Arial, Helvetica, sans-serif}
-->
</style>

<head>
<title>Inscription</title>

</head>

,

----

* * * I N S C R I P T I O N * * *

<form action="inscription.php" method="post">
<table width="600" border="0" cellspacing="15" cellpadding="0">
----,
<table width=\"700\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
----

<fieldset>
<legend align="top" class="bodyWhite11" > <?php echo _("Informations of login") ?></legend>
<table width="600" border="0" cellspacing="0" cellpadding="0">
----, </td>
,
,

----

<?php echo _("Login") ?>*,
" tabindex="1">,
,

----

<?php echo _("Password") ?>*,
">,
<?php
if (isset($erreur)) echo '
',$erreur;
?>,

----

<?php echo _("Password confirm") ?>*,
">

</fieldset></td>
</tr>
</table>


<fieldset>
<legend align="top" class="bodyWhite11" > <?php echo _("Questions") ?></legend>
<table width="600" border="0" cellspacing="0" cellpadding="0">
----, <?php echo _(\"Gender\") ?></td>

<?php echo _("woman") ?>

<?php echo _("men") ?>,
,

----

<?php echo _("Name") ?>,
,
,

----

<?php echo _("Firstname") ?>,
,
,

----

<?php echo _("Date of birth") ?>,
<Select name="birth_day" class="body" tabindex="7">
<option selected value=""><?php echo _("Day") ?></option>
<?php
$i = 1; // initialisation de la variable de boucle
while( $i < 32 )
{
?>
<option value="<?php echo $i;?>"><?php echo $i?></option>
<?php // affichage
$i++; // incrémentation
}
?>
</select>
/
<select name="birth_month" class="body" tabindex="8">
<option selected value=""><?php echo _("month") ?></option>
<?php
$i = 1; // initialisation de la variable de boucle
while( $i < 13 )
{
?>
<option value="<?php echo $i;?>"><?php echo $i;?></option>
<?php // affichage
$i++; // incrémentation
}
?>
</select>
/
<select name="birth_year" class="body" tabindex="9">
<option selected value=""><?php echo _("year") ?></option>
<?php
$i = 1909; // initialisation de la variable de boucle
while( $i <= Date("Y") )
{
?>
<option value=<?php echo $i;?>><?php echo $i;?></option>
<?php // affichage
$i++; // incrémentation
}
?>
</select>,
,

----

<?php echo _("Profession") ?>,
,

<?php
if (isset($erreur)) echo '
',$erreur;
?>
,

----

<?php echo _("Address 1") ?>,
,

----

<?php echo _("Address 2") ?>,
,
,

----

<?php echo _("Code ZIP/ City ") ?>,
,
,
,

----

<?php echo _("State") ?>,
,
,

----

<?php echo _("Country") ?>,
<select name="country" tabindex="16">
<optgroup label="Europe">
<option value="allemagne">Allemagne</option>
<option value="albanie">Albanie</option>
<option value="andorre">Andorre</option>
<option value="autriche">Autriche</option>
<option value="bielorussie">Biélorussie</option>
<option value="belgique">Belgique</option>
<option value="bosnieHerzegovine">Bosnie-Herzégovine</option>
<option value="bulgarie">Bulgarie</option>
<option value="croatie">Croatie</option>
<option value="danemark">Danemark</option>
<option value="espagne">Espagne</option>
<option value="estonie">Estonie</option>
<option value="finlande">Finlande</option>
<option value="france" >France</option>
<option value="grece">Grèce</option>
<option value="hongrie">Hongrie</option>
<option value="irlande">Irlande</option>
<option value="islande">Islande</option>
<option value="italie">Italie</option>
<option value="lettonie">Lettonie</option>
<option value="liechtenstein">Liechtenstein</option>
<option value="lituanie">Lituanie</option>
<option value="luxembourg">Luxembourg</option>
<option value="exRepubliqueYougoslave">Ex-République Yougoslave</option>
<option value="malte">Malte</option>
<option value="moldavie">Moldavie</option>
<option value="monaco">Monaco</option>
<option value="norvege">Norvège</option>
<option value="paysBas">Pays-Bas</option>
<option value="pologne">Pologne</option>
<option value="portugal">Portugal</option>
<option value="roumanie">Roumanie</option>
<option value="royaumeUni">Royaume-Uni</option>
<option value="russie">Russie</option>
<option value="saintMarin">Saint-Marin</option>
<option value="serbieEtMontenegro">Serbie-et-Monténégro</option>
<option value="slovaquie">Slovaquie</option>
<option value="slovenie">Slovénie</option>
<option value="suede">Suède</option>
<option value="suisse">Suisse</option>
<option value="republiqueTcheque">République Tchèque</option>
<option value="ukraine">Ukraine</option>
<option value="vatican">Vatican</option>
</optgroup>
<optgroup label="Amérique">
<option value="antiguaEtBarbuda">Antigua-et-Barbuda</option>
<option value="argentine">Argentine</option>
<option value="bahamas">Bahamas</option>
<option value="barbade">Barbade</option>
<option value="belize">Belize</option>
<option value="bolivie">Bolivie</option>
<option value="bresil">Brésil</option>
<option value="canada">Canada</option>
<option value="chili">Chili</option>
<option value="colombie">Colombie</option>
<option value="costaRica">Costa Rica</option>
<option value="cuba">Cuba</option>
<option value="republiqueDominicaine">République Dominicaine</option>
<option value="dominique">Dominique</option>
<option value="equateur">Équateur</option>
<option value="etatsUnis" selected="selected">États Unis</option>
<option value="grenade">Grenade</option>
<option value="guatemala">Guatemala</option>
<option value="guyana">Guyana</option>
<option value="haiti">Haîti</option>
<option value="honduras">Honduras</option>
<option value="jamaique">Jamaîque</option>
<option value="mexique">Mexique</option>
<option value="nicaragua">Nicaragua</option>
<option value="panama">Panama</option>
<option value="paraguay">Paraguay</option>
<option value="perou">Pérou</option>
<option value="saintCristopheEtNieves">Saint-Cristophe-et-Niévès</option>
<option value="sainteLucie">Sainte-Lucie</option>
<option value="saintVincentEtLesGrenadines">Saint-Vincent-et-les-Grenadines</option>
<option value="salvador">Salvador</option>
<option value="suriname">Suriname</option>
<option value="triniteEtTobago">Trinité-et-Tobago</option>
<option value="uruguay">Uruguay</option>
<option value="venezuela">Venezuela</option>
</optgroup>
<optgroup label="Afrique">
<option value="afriqueDuSud">Afrique Du Sud</option>
<option value="algerie">Algérie</option>
<option value="angola">Angola</option>
<option value="benin">Bénin</option>
<option value="botswana">Botswana</option>
<option value="burkina">Burkina</option>
<option value="burundi">Burundi</option>
<option value="cameroun">Cameroun</option>
<option value="capVert">Cap-Vert</option>
<option value="republiqueCentre-Africaine">République Centre-Africaine</option>
<option value="comores">Comores</option>
<option value="republiqueDuCongo">République Du Congo</option>
<option value="congo">Congo</option>
<option value="coteIvoire">Côte d'Ivoire</option>
<option value="djibouti">Djibouti</option>
<option value="egypte">égypte</option>
<option value="ethiopie">éthiopie</option>
<option value="erythrée">érythrée</option>
<option value="gabon">Gabon</option>
<option value="gambie">Gambie</option>
<option value="ghana">Ghana</option>
<option value="guinee">Guinée</option>
<option value="guinee-Bisseau">Guinée-Bisseau</option>
<option value="kenya">Kenya</option>
<option value="lesotho">Lesotho</option>
<option value="liberia">Liberia</option>
<option value="libye">Libye</option>
<option value="madagascar">Madagascar</option>
<option value="malawi">Malawi</option>
<option value="mali">Mali</option>
<option value="maroc">Maroc</option>
<option value="maurice">Maurice</option>
<option value="mauritanie">Mauritanie</option>
<option value="mozambique">Mozambique</option>
<option value="namibie">Namibie</option>
<option value="niger">Niger</option>
<option value="nigeria">Nigeria</option>
<option value="ouganda">Ouganda</option>
<option value="rwanda">Rwanda</option>
<option value="saoTomeEtPrincipe">Sao Tomé-et-Principe</option>
<option value="senegal">Séngal</option>
<option value="seychelles">Seychelles</option>
<option value="sierra">Sierra</option>
<option value="somalie">Somalie</option>
<option value="soudan">Soudan</option>
<option value="swaziland">Swaziland</option>
<option value="tanzanie">Tanzanie</option>
<option value="tchad">Tchad</option>
<option value="togo">Togo</option>
<option value="tunisie">Tunisie</option>
<option value="zambie">Zambie</option>
<option value="zimbabwe">Zimbabwe</option>
</optgroup>
<optgroup label="Asie">
<option value="afghanistan">Afghanistan</option>
<option value="arabieSaoudite">Arabie Saoudite</option>
<option value="armenie">Arménie</option>
<option value="azerbaidjan">Azerbaîdjan</option>
<option value="bahrein">Bahreîn</option>
<option value="bangladesh">Bangladesh</option>
<option value="bhoutan">Bhoutan</option>
<option value="birmanie">Birmanie</option>
<option value="brunei">Brunéi</option>
<option value="cambodge">Cambodge</option>
<option value="chine">Chine</option>
<option value="coreeDuSud">Corée Du Sud</option>
<option value="coreeDuNord">Corée Du Nord</option>
<option value="emiratsArabeUnis">émirats Arabe Unis</option>
<option value="georgie">Géorgie</option>
<option value="inde">Inde</option>
<option value="indonesie">Indonésie</option>
<option value="iraq">Iraq</option>
<option value="iran">Iran</option>
<option value="israel">Israël</option>
<option value="japon">Japon</option>
<option value="jordanie">Jordanie</option>
<option value="kazakhstan">Kazakhstan</option>
<option value="kirghistan">Kirghistan</option>
<option value="koweit">Koweît</option>
<option value="laos">Laos</option>
<option value="liban">Liban</option>
<option value="malaisie">Malaisie</option>
<option value="maldives">Maldives</option>
<option value="mongolie">Mongolie</option>
<option value="nepal">Népal</option>
<option value="oman">Oman</option>
<option value="ouzbekistan">Ouzbékistan</option>
<option value="pakistan">Pakistan</option>
<option value="philippines">Philippines</option>
<option value="qatar">Qatar</option>
<option value="singapour">Singapour</option>
<option value="sriLanka">Sri Lanka</option>
<option value="syrie">Syrie</option>
<option value="tadjikistan">Tadjikistan</option>
<option value="taiwan">Taîwan</option>
<option value="thailande">Thaîlande</option>
<option value="timorOriental">Timor oriental</option>
<option value="turkmenistan">Turkménistan</option>
<option value="turquie">Turquie</option>
<option value="vietNam">Viêt Nam</option>
<option value="yemen">Yemen</option>
</optgroup>
<optgroup label="Océanie">
<option value="australie">Australie</option>
<option value="fidji">Fidji</option>
<option value="kiribati">Kiribati</option>
<option value="marshall">Marshall</option>
<option value="micronesie">Micronésie</option>
<option value="nauru">Nauru</option>
<option value="nouvelleZelande">Nouvelle-Zélande</option>
<option value="palaos">Palaos</option>
<option value="papouasieNouvelleGuinee">Papouasie-Nouvelle-Guinée</option>
<option value="salomon">Salomon</option>

<option value="samoa">Samoa</option>
<option value="tonga">Tonga</option>
<option value="tuvalu">Tuvalu</option>
<option value="vanuatu">Vanuatu</option>
</optgroup>
</select>

</fieldset></td>
</tr>
</table>


<fieldset>
<legend align="top" class="bodyWhite11" ><?php echo _("Communications") ?></legend>
<table width="600" border="0" cellspacing="0" cellpadding="0">
----, </td>
,
,

----

<?php echo _("Phone") ?>,
,
,

----

<?php echo _("Cellphone") ?>,
,
<?php
if (isset($erreur)) echo '
',$erreur;
?>,

----

<?php echo _("Email") ?>*,
" tabindex="20">,

----

<?php echo _("Votre Skype ID") ?>,


</fieldset></td>
</tr>
</table>


<fieldset>
<legend align="top" class="bodyWhite11" ><?php echo _("Questions") ?></legend>
<table width="600" border="0" cellspacing="0" cellpadding="0">
----, </td>
,
,

----

<?php echo _("Question 1") ?>*,
<textarea name="question1" cols="37" rows="3" wrap="VIRTUAL" class="body" tabindex="18"></textarea>,
<?php echo _("example, ...") ?>,

----

<?php echo _("Question 2") ?>*,
<textarea name="question2" cols="37" rows="3" wrap="VIRTUAL" class="body" tabindex="19"></textarea>,
,

----

<?php echo _("Question 3") ?>,

<?php echo _("Yes") ?>

<?php echo _("NO") ?>,
,

----

<?php echo _("Question 4 ") ?>,

<?php echo _("Yes") ?>

<?php echo _("No") ?>,
,

----

<?php echo _("Question 5") ?>,
,
,

----

<?php echo _("Comment") ?>,
<textarea name="comment" cols="37" rows="5" wrap="VIRTUAL" class="body" tabindex="25"></textarea>,


</fieldset></td>
</tr>
</table>
</td>
</tr>
</table></form></td>
</tr>
</table>

</html>

34 réponses

Hello Cod57, merci beaucoup !

ca marche nikel dès à présent.

pourrais-tu encore juste m'aider.. je désire ajouter un Captcha.. j'ai ce code que ..mais je ne sais pas comment le lié à la validation via le bouton sur la page "form.php qui lui envois le formulaire pour check via la page inscription.php.. alors comment faire pour que le captcha fonctionne ?

- la balise "form" original....
<form name="frmCaptcha" id="frmCaptcha" action="/common/captcha.php" method="post">


- le bouton actuellemnt utilisé pour valider le formulaire via la page "inscription.php ...
</td>
<td></td>
<td width="130" align="center">


- le bouton qui devrait être utilisé pour le fonctionnement du captcha


merci encore de ton aide.

Deep H
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
17 oct. 2012 à 21:17
bonsoir

tout est dans le zip

avec le captcha


Bonne programmation !
0
Hello Cod57,

merci pour ton travail, et aide.. tout fonctionne à merveille !

j'ai une autre page a faire, qui dois reprendre des données déjà dans la base pour compléter un formulaire, je vais faire mon maximum et si je puis faire appel à tes compétences en cas de panne. c'est super. en tout les cas. merci pour ce formulaire.

bonne journée à toi.

Deep H
0
Hello Cod57

pourrais-tu me dire comment récupérer dans les champs text (name, lastname..etc) les infos se trouvant sur sur la base de données (member), mais pour enregistrer un autre type de formulaire dans une autres base de donnée appelée (dreams). Afin de ne pas redemander certaine infos au membres qui est logué, donc si le memebre n'est pas logué, il y entre ses infos, si il est logué, on récupère ces infos.

mes essai, me donne une page noir.. donc pas vraiment au point.

merci de ton aide. et bonne journée.

Deep H
0

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

Posez votre question
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
19 oct. 2012 à 18:46
change dans inscription.php
tu rajoutes ...
$_SESSION['client']=serialize($_POST);

<?php
// on teste si le visiteur a soumis le formulaire 
if (empty($err) && isset($_POST['inscription']) && $_POST['inscription'] === 'Inscription') { 
//on insere et redirige
conn();
$sql = 'INSERT INTO member VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.mysql_escape_string(md5($_POST['pass'])).'", "'.mysql_escape_string($_POST['type']).'", "'.mysql_escape_string($_POST['name']).'", "'.mysql_escape_string($_POST['firstname']).'", "'.mysql_escape_string($_POST['birth_day']).'", "'.mysql_escape_string($_POST['birth_month']).'", "'.mysql_escape_string($_POST['birth_year']).'", "'.mysql_escape_string($_POST['address1']).'", "'.mysql_escape_string($_POST['address2']).'", "'.mysql_escape_string($_POST['job']).'", "'.mysql_escape_string($_POST['code_postal']).'", "'.mysql_escape_string($_POST['city']).'", "'.mysql_escape_string($_POST['state']).'", "'.mysql_escape_string($_POST['country']).'", "'.mysql_escape_string($_POST['email']).'", "'.mysql_escape_string($_POST['phone']).'", "'.mysql_escape_string($_POST['auction']).'", "'.mysql_escape_string($_POST['dream']).'", "'.mysql_escape_string($_POST['mobile']).'", "'.mysql_escape_string($_POST['skype']).'", "'.mysql_escape_string($_POST['msn']).'", "'.mysql_escape_string($_POST['newsletter']).'", "'.mysql_escape_string($_POST['ext']).'", "'.mysql_escape_string($_POST['karus']).'", "'.mysql_escape_string($_POST['sponsor']).'", "'.mysql_escape_string($_POST['comment']).'")'; 
$_SESSION['client']=serialize($_POST);
mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error()); 
mysql_close();
$_SESSION['login'] = $_POST['login']; 
header('Location: member.php');exit; 
}else{
echo '<center>
'.$err;
echo '<hr>[ [javascript:history.back(); RETOUR AU FORMULAIRE] ]
</center>';
}
?>


tu fais un form dans un fichier dream.php
<?php
session_start();
if(isset($_SESSION['login'],$_SESSION['client'])){
/*ici ou mieux dans inscriptdream.php avant le insert*/
/*le tableau de ces valeurs */
echo '';
$tab = print_r(unserialize($_SESSION['client']));
echo '

';

/*tu peux faire des echos dans des champs hidden ,dans des values ... $tab[ ??? ]*/
echo '<form action="inscriptdream.php" method="post">ccc  </form>';
}else{
/*form complet ... */
echo '<form action="inscriptdream.php" method="post">aaa  </form>';
}
?>



Bonne programmation !
0
Hello Cod57

je t ai suivi a 50%, mais le code dans la page php ( dream ) que j'ai appeler dream_kod.php .. me donne une page blanche lorsque je valide le formulaire, et je n'arrive pas a reprendre les données qui se trouvent dans la base de donnée (member) suite à l'enregistrements de la page "inscription".

alors pour peut-'etre mieux m'exprimer, si tu avait par exemple 2 page (inscription) la 2ème que tu renomme en Dream, chacune de ces pages de formulaire a se propre page de kod (php). la page inscription vient enregistrer les données dans la base "member" en créant le compte du membre. et la page "dream" devrait reprendre les infos existante du compte membre ouvert, sans que cela soit une action que le membre doit faire..

genre.. le "Name", "Lastname", "email", country...etc

si tu peux me préparer une exemple de cette page dream avec quelques champs et le code php de cette page qui ressemble à celle de inscription, je pense que ce m'aidera.

merci pour ton aide.

Deep H
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 oct. 2012 à 09:56
bonjour

ce que je comprend pas c'est tu inscris depuis
inscription.php donc tu veux soumettre deux requêtes une vers member et une autre vers dream
pas besoin de faire deux forms il suffit de faire une autre insertion sql ...

$sql1 = 'INSERT INTO member ...
mysql_query($sql1);
$sql2 = 'INSERT INTO dream ...
mysql_query($sql2);

peux tu m'expliquer
ce que tu veux faire au juste

tu inscris dans une table member
puis le client est connecté ...
et ?


Bonne programmation !
0
Hello Cod57,

le client est connecté, et il y a un autre formulaire avec des questions complètement différentes, est les données viennent s'enregistrer dans une autres base de données.

donc pour éviter au client de remettre son nom, prénom, email...etc ( afin d'obtenir dans cette seconde base les information sur lui )qui sont minimales, je pensais que nous pouvions récupérer les données lors de son inscription.

comprends-tu mieux ma demandes ?


Deep H
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 oct. 2012 à 18:53
bonjour

c'est bien ce que fait mon bout de code
je stocke les infos de l'inscription dans
une session qui est utilisable dans d'autres parties du site ... mais tu peux stocker que l'id de son inscription dans member
aprés l'insertion dans member du fait

$_SESSION['id']= mysql_insert_id();

donc

mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error());
$_SESSION['id']= mysql_insert_id();
mysql_close();
$_SESSION['login'] = $_POST['login'];
header('Location: member.php');exit;

TU AURAS DONC l'id de member récupérable ou tu veux il suffit d'ouvrir la session en haut de la page utilisée et faire echo $_SESSION['id']
par exemple pour voir son id dans member ...

tu devras crees dans la table dream un champs id_member ou tu stockes l'id de member et ainsi tu peux lier les deux tables
et faire des jointures c'est à dire prendre des références dans member et dream et faire des tableaux ou tu peux mélanger les infos des deux tables qui peuvent être dans deux bases ...

maintenant si le client se déconnecte avant de faire sa deuxième inscription il faudrait songer à un autre système ...

Bonne programmation !
0
re,

merci bien , mais je pense jsutement que le membre ne va pas directement faire son 2ème formulaire dans la même session, étant donné que cela se trouve dans une autre pages... donc forte chance pour que le membre remplisse ceci après coup.

donc si tu as une autres solution...?

Deep H
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 oct. 2012 à 19:25
cela ne change rien si il va sur une page

x.php

et quelle commence par

<?php
session_start();

tu as accès a son id dans member

via $_SESSION['id']

tu peux faire un select et prendre les champs que tu veux ...

$sql = "select * from member where id='".$_SESSION['id']."'";

mais si il se déconnecte et revient plus tard et il a fermé son navigateur ça marche plus il faudra donc refaire une fonction qui recupére l'id associé à son login et le stocke dans une session pour l'utilisé à souhait lors de sa reconnection par un form de login ...


Bonne programmation !
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 oct. 2012 à 19:49
voilà un brouillon

<?php
session_start();

$host="localhost"; // Host name 
$username=""; // Mysql username 
$password=""; // Mysql password 
$db_name="test"; // Database name 
$tbl_name="member"; // Table name 

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");


if(isset($_POST['myusername'],$_POST['mypassword'])){
// username and password sent from form 
$myusername=$_POST['myusername']; 
$mypassword=$_POST['mypassword']; 

// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = md5(mysql_real_escape_string($mypassword));
$sql="SELECT * FROM $tbl_name WHERE login='$myusername' and password='$mypassword' limit 1";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=@mysql_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
while($row = mysql_fetch_array($result)){
}
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['id']=$row['id'] ;
$_SESSION['login']=$row['login'] ;
$_SESSION['AUTH']=true;
}
else {
echo "Wrong Username or Password";
}
}else{
}


if(isset($_SESSION['id'],$_SESSION['login'],$_SESSION['AUTH']) &&  $_SESSION['AUTH']===true){
/*ici tu peux select des champs de member avec une query
et les mettre dans hidden input ou plus tard le select dans la page avant insertion inscription2.php
*/
echo '<form method="post" action="inscription2.php">
salut 

</form>';
}else{
//pas possible
}
?>





Pour vous inscrire ici connecter vous d'abord

<form name=\"form1\" method=\"post\" action=\"\">
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
----, Member Login </td>

----

Username,
:,
,

----

Password,
:,
,

----

,
,


</td>
</form>
</tr>
</table>



Bonne programmation !
0
bon j'ai intégré ton code, l'enregistrements s'effectue toujours, mais je n'ai pas de liaison des données entre celle entrée dans la table member et la table dreams.

mon second formulaire est comme le premier, seulement que les donnée ne vont pas dans la même table.

c'est pas dérangeant, sauf que je pense que cela ne devrait pas être ainsi avec ton code.. donc j'ai du louper une code à un endroit., voir 2 ;o)

as-tu un mail, ou un skype ou je puis te contacter, t'envoyer peut-être ma page si tu as le temps d'y jeter un oeil.

j'ai encore la page des paramètre de l'utilisateur à faire, qui serait censée être dans le même style ( reprise des infos inscrites dans la base, pour modifications (du membre ).. et l'ajout d'un Avatar.. ce que je ne sais absolument pas faire... je pique du code par ci par là... au bonheur la chance ca marche.... ou pas.

A mon tour si je puis t'aider.. c'est avec grand plaisir.. mon domaine, le multimédia et le graphisme.

merci de tes infos.

Deep H
0
Re,

sur ma page des paramètres ( donc récupérations des infos de la BDD) j'ai mis cela

<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: login.php');
exit();
}



/* CLASS FOR DB CONNECTION */
require_once ($phpK['path_classes'] . '/class.dbconnect.php');
require_once ($phpK['path_includes'] . '/dbconnect.php');


$reponse = mysql_query ("SELECT * FROM member"); // Requête SQL

while ($donnees = mysql_fetch_array($reponse)) // On boucle pour afficher toutes les données et on met toutes données dans un tableau


?>
<?php echo $donnees['name'];?>
<?php echo $donnees['lastname'];?>
<?php echo $donnees['birth_day'];?>
<?php echo $donnees['birth_month'];?>
<?php echo $donnees['birth_year'];?>
<?php echo $donnees['address1'];?>
<?php echo $donnees['address2'];?>
<?php echo $donnees['job'];?>
<?php echo $donnees['code_postal'];?>
<?php echo $donnees['city'];?>
<?php echo $donnees['state'];?>
<?php echo $donnees['country'];?>
<?php echo $donnees['email'];?>
<?php echo $donnees['phone'];?>
<?php echo $donnees['auction'];?>
<?php echo $donnees['dream'];?>
<?php echo $donnees['mobile'];?>
<?php echo $donnees['skype'];?>
<?php echo $donnees['msn'];?>
<?php echo $donnees['newsletter'];?>
<?php echo $donnees['ext'];?>
<?php echo $donnees['karus'];?>
<?php echo $donnees['sponsor'];?>
<?php echo $donnees['pseudok'];?>
<?php echo $donnees['comment'];?>
<?php

{

mysql_close(); // On oubli pas de déconnecter la base de données

}
?>

exemple de champs text : ">

mais rien ne fonctionne.... la page s'affiche correctement, mais je n'ai pas les infos du membres.. et comment puis-je les avoir, et lui permettre de modifier, ou cas ou. ?

merci de votre aide..


Deep H
0
Rejoignez-nous