Espace inscription php Mysql

etoile9430 Messages postés 534 Statut Membre -  
etoile9430 Messages postés 534 Statut Membre -
salut tous le monde et merci d'avoir pris le temps de lire mon message,

j'ai un site et j'aimerai que les visiteurs puissent s'inscrire sur mon site, donc j'ai créer un fichier inscription.php qui contient ca:
-------------------------------------------------------------------------------------------------------------------
<div>
<form action='./verif.php' method='POST'>
<input type='hidden' name='article' value='50'>
<input type='hidden' name='idsite' value='1'>
<table border='0' cellpadding='1' cellspacing='0' align='center'>

<tr>

<td class='bordure'>

<table border='0' cellpadding='6' cellspacing='0' class='fond_news'>


<tr>
<td WIDTH="50px"> <label for="nom">Nom</label>:</td>
<td WIDTH="1000px"> <input type='text' name='nom' size='38' value=''> </td>
</tr>

<tr>
<td WIDTH="50px"> <label for="email">Adresse mail</label>:</td>
<td WIDTH="1000px"> <input type='text' name='email' size='38' value=''> </td>
</tr>

<tr>
<td align='center'><input type='submit' value='Poster le message'></td>
</tr>

</table>
</td>
</tr>
</table>
</form>
</div>
----------------------------------------------------------------------------------------------------------------
jusqu'ici tous va bien, donc j'ai créer une page verif.php qui va me permettre de me vérifier si le formulaire est bien remplis il contient ca :

<?php

include ('connex.php');


if ($nom == "")// ici on verifie "si" la case nom est vide ou non "si" elle n'est pas vide, on va afficher un message qui va demander d'intègrer un nom
{
echo "
ajouter un nom svp

";
}

elseif ($email == "")// ici le "sinon-si" va afficher de nouveau un formulaire pour lui dire que le formulair n'a pas pu etre envoyer parce que la case est vide et qu'il faut le remplir
{
echo "
ajouter un texte svp

";
}
else // sinon le message est envoyèe
{ echo " message envoyé";

};



?>
-----------------------------------------------------------------------------------------------
la page connex.php contien ca:

<?php
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'inscription';

$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error());
mysql_select_db($db) or die ('Erreur :'.mysql_error());

?>


-------------------------------------------------------------

DONC voila j'ai un problème qui s'affiche:
Notice: Undefined index: nom in C:\wamp\www\2\verif.php on line 6

Notice: Undefined index: email in C:\wamp\www\2\verif.php on line 14
ajouter un nom svp





quelqu'un pour m'aider car je trouve pas l'erreur merci
A voir également:

7 réponses

a70m Messages postés 3121 Statut Contributeur 217
 
Ah et je viens de voir aussi que tu ne définis nulle part tes variables.

Etant donné que tu récupères les données d'un formulaire dans un form en POST, tu devras faire ceci juste après le include de ton verif.php :

$nom = $_POST['nom'];
$mail = $_POST['mail'];

Tu devrais aussi les sécuriser comme ceci :

$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$mail= mysql_real_escape_string(htmlspecialchars($_POST['mail']));


Voilà, tu mets ceci juste après la fonction include('connex.php'); dans ton verif.php
et tu fais ce que j'ai dit plus haut concernant les if() et elseif() et tout devrait rentrer dans l'ordre.

Cordialement
1
etoile9430 Messages postés 534 Statut Membre 19
 
c'est parfait merci beaucoup a70m
mais j'ai encore une dernier question c'est coté "phpmyadmin" comme j'ai marqué dans connex.php
<?php
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'inscription';

$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error());
mysql_select_db($db) or die ('Erreur :'.mysql_error());

?>



ma base de donné doit être créer où? et est que je vais l'appelé inscription?
parce que je confond les bases de données et les tables que nous trouvons dans les bases de données
0
a70m Messages postés 3121 Statut Contributeur 217
 
Alors, pour faire simple :

Un base de données, c'est comme une armoire, mais une grande armoire.
Dans cette armoire, il y a des étagères, ce sont des tables
Et sur ces étagères, il y'a des dossiers, ce sont les champs de la table

Donc tu crées un Base de données, que tu appelles par le nom de ton site par exemple.

Et dans cette base, tu crées une table que tu appelles inscription.

Cordialement
1
etoile9430 Messages postés 534 Statut Membre 19
 
merci beaucoup je vois mieux mais je vois pas trop où je vais dire que la base de donné est "monsite" et la table "inscription"
0
a70m Messages postés 3121 Statut Contributeur 217
 
Le mieux, c'est de faire une page connect_bdd.php où tu auras ça :

<?php
mysql_connect("localhost", "root", "TON PASS"); 
mysql_select_db("tonsite");  // Sélection de la base 
?>


Et cette page connect_bdd.php, tu l'include (à l'aide de la fonction include() ) dans toutes tes pages ;)
1
etoile9430 Messages postés 534 Statut Membre 19
 
j'ai plus rien a te dire juste te remercie
merci merci merci a70m pour tous
0
a70m Messages postés 3121 Statut Contributeur 217
 
Derien. Bonne continuation.
0
a70m Messages postés 3121 Statut Contributeur 217
 
Salut,

C'est dans ton if() à la ligne 6 de verfi.php

Mets le comme ça :
if($nom == NULL) etc ..

Pense à le remplacer dans les autres elseif ;)

Cordialement
0
etoile9430 Messages postés 534 Statut Membre 19
 
merci d'avoir pris le temps pour me rependre mais ca marche pas j'ai toujours ca :
Notice: Undefined variable: nom in C:\wamp\www\inscription\verif.php on line 7
ajouter un nom svp
0
a70m Messages postés 3121 Statut Contributeur 217
 
J'ai anticipé cette erreur :-P, je t'ai répondu juste en dessous ;)
0
etoile9430 Messages postés 534 Statut Membre 19
 
je reviens sur cette discutions encore une foi parce que ca fonction le formulaire il est bien envoyé, Mais je le trouve pas dans ma base de donné .
pour mieux expliquer ce que j'ai fais,
1) j'ai crée une base de donné appelé 'monsite'
2) j'ai importer ce texte:
-- Structure de la table 'inscription'
0

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

Posez votre question
a70m Messages postés 3121 Statut Contributeur 217
 
Alors, lis ce post en entier avant de faire quoi que ce soit, parce qu'il y'a des soucis dans ton post.

Une fois ta BASE DE DONNEE 'monsite' crée, tu vas créer une TABLE 'membre' à 3 champs.
* Un champ 'id' en MEDIUM INT en Primary key et auto-incrément
* Un champ 'nom' en TEXT
* Un champ 'mail' en TEXT

Ensuite, dans vérif.php tu auras la requête suivante :
mysql_query("INSERT INTO membres VALUES('', '$nom', '$mail')") or die(mysql_error());


Ca c'est en théorie, mais dans ton code, il y'a quelque chose que je ne comprends pas.
Tu souhaites, d'après ce que j'ai lu, créer un espace membre.

Sauf que dans le formulaire que tu as joins, tu parles d'un envoi de message ... Et en plus de ça, dans le formulaire, il n'y a pas de champs où le membre inscrira le message.

Donc, si tu veux faire un espace membre, où seul les membres enregistrés peuvent poster un message, il faut le faire en 3 temps :

* Créer l'inscription à l'espace membre.
* Créer la page qui permet aux membres inscrits d'accèder à la page pour poster un message.
* Faire l'envoi du message, et la requête pour stocker le message.

C'est bien ce système que tu veux développer et mettre en place, n'est-ce pas ?
Si oui, inutile de faire ce que j'ai décris plus haut.

Cordialement
0
etoile9430 Messages postés 534 Statut Membre 19
 
c'est vrais que j'ai simplifie le message j'ai montrer que nom et email mais en vrais j'ai fai beaucoup plus comme prénom, date de naissance, adresse...
et en faite je veut juste que les visiteurs me laisse leur nom prénom date de naissance etc. et puis je veut récupérai certain information de la base de donné et puis les affichées dans une page php
0
a70m Messages postés 3121 Statut Contributeur 217
 
Ok alors, il faut procéder par étape ...

Tu souhaites donc faire un espace membre avec un panel de controle que seul toi peut voir. C'est ça ?
0
etoile9430 Messages postés 534 Statut Membre 19
 
oui voila
0
a70m Messages postés 3121 Statut Contributeur 217
 
Très bien.

Alors voici la liste des étapes et des pages à faire.

* Créer une table SQL nommée 'membres' par exemple
* Créer une page de connexion et une d'identification qui sera chargé de créer la Session de l'utilisateur qui vient de se logger.
* Créer une page d'inscription

Une fois fait, tu pourras t'occuper de la page qui listera les membres
Plus tard encore, tu pourras te pencher sur la possibilité de modifier les informations des membres.

Cordialement
0
etoile9430 Messages postés 534 Statut Membre 19
 
c'est bon j'ai trouver ce qu'il me manqué
mysql_query ("INSERT INTO inscription (ID, nom, groupe, prenom,email) VALUES ('', 'nom', 'prenom', 'email') ");



et merci a70m pour ton aide
0