Pb ds une inscription en ligne

mariah -  
 ric -
bonjour,

je dois réaliser une inscription en ligne à l'aide de php et mysql, et comme c'est la premiére fois que je les utilise, je ne sais pas comment valider le remplissage des champs de mon formulaire, ni comment ajouter les informations à ma base de données..
j'ai trouvé le bout de code suivant pour me connecter à ma base:
<? // Paramètres persos
$host = "localhost";
$user = "root"; // vide ou "root" en local
$pass = ""; // vide en local
$bdd = "inscriptions"; // nom de la BD

//connexion au serveur MySQL
$connexion = mysql_connect("dbhost","user","password");
if (!$connexion) {
echo "Impossible d'effectuer la connexion";
exit;
}

//sélection de la BDD
$db = mysql_select_db("$bdd", $connexion);
if (!$db) {
echo "Impossible de sélectionner cette base données";
exit;
}

et pur inserer les valueres dans les atributs appropriés de la table choisie, j'ai utilisé le bout de code suivant , le shéma de la table séléctionnée:

etudiant ( C.N.E int(10),
C.I.N varchar(8),
NOME varchar(15),
PRENOME varchar(15),
DATENAISSANCE date,
LIEUNAISSANCE varchar(20),
PROVINCENAISSANCE varchar(20),
PAYSE varchar(20),
SEXE varchar(8),
NATIONALITE varchar(10),
ADRESSE varchar(40),
TELEPHONNE int (9),
CONSTRAINT c1 PRIMARY KEY (C.N.E) )

le bout de code est:
$NOME=""; if(!empty($_POST["NOME"]))
$nom=addslashes($_POST["NOME"]);
$PRENOME=""; if(!empty($_POST["PRENOME"]))
$PRENOME=$_POST["PRENOME"];
$C.I.N=""; if(!empty($_POST["C.I.N"]))
$PRENOME=$_POST["C.I.N"];
$C.N.E=""; if(!empty($_POST["C.N.E"]))
$PRENOME=$_POST["C.E.N"];
$LIEUNAISSANCE=""; if(!empty($_POST["LIEUNAISSANCE"]))
$PRENOME=$_POST["LIEUNAISSANCE"];
$PROVINCENAISSANCE=""; if(!empty($_POST["PROVINCENAISSANCE"]))
$PRENOME=$_POST["PROVINCENAISSANCE"];
$PAYSE=""; if(!empty($_POST["PAYSE"]))
$PRENOME=$_POST["PAYSE"];

$SEXE=""; if(!empty($_POST["SEXE"]))
$SEXE=$_POST["SEXE"];

$NATIONALITE=""; if(!empty($_POST["NATIONALITE"]))
$NATIONALITE=$_POST["NATIONALITE"];

$TELEPHONNE=""; if(!empty($_POST["TELEPHONNE"]))
$TELEPHONNE=$_POST["TELEPHONNE"];
$PAYSE=""; if(!empty($_POST["ADRESSE"]))
$ADRESSE=$_POST["ADRESSE"];

$table="etudiant";
$query = "INSERT INTO $table(C.N.E,C.I.N,NOME,PRENOME,DATENAISSANCE,LIEUNAISSANCE,PROVINCENAISSANCE,PAYSE,SEXE,NATIONALITE,ADRESSE,TELEPHONNE)";
$query .= " VALUES('$C.N.E','$C.I.N','$NOME','$PRENOME','$20-10-83','$LIEUNAISSANCE','$PROVINCENAISSANCE','$PAYSE','$SEXE','$NATINALITE','$ADRESSE','$TELEPHONNE')";
$result = mysql_query($query);

et pour mettre fin à la connexion j'ai mis :
mysql_close();

je vous prie de bien vouloir me renseigner sur la démarche à suivre, je ne reçoit aucun message d'erreur, mais je ne retrouve rien dans ma table..
SVP décrivez moi ce que je dois faire..
dans l'attente d'une réponse favorable de votre part, veuillez agréer mes considérations anticipées.

merci de votre lecture de mon message
A voir également:

4 réponses

ric
 
Les corrections sont signalées.
<? // Paramètres persos
$host = "localhost";
$user = "root"; // vide ou "root" en local
$pass = ""; // vide en local
$bdd = "inscriptions"; // nom de la BD

//connexion au serveur MySQL
//$connexion = mysql_connect("dbhost","user","password");
// Correction
$connexion = mysql_connect("$host","$user","$pass"); // les noms de tes variables

if (!$connexion) {
echo "Impossible d'effectuer la connexion";
exit;
}

//sélection de la BDD
$db = mysql_select_db("$bdd", $connexion);
if (!$db) {
echo "Impossible de sélectionner cette base données";
exit;
}

$NOME=""; if(!empty($_POST["NOME"]))
$nom=addslashes($_POST["NOME"]);
$PRENOME=""; if(!empty($_POST["PRENOME"]))
$PRENOME=$_POST["PRENOME"];
$C.I.N=""; if(!empty($_POST["C.I.N"]))
$PRENOME=$_POST["C.I.N"];
$C.N.E=""; if(!empty($_POST["C.N.E"]))
$PRENOME=$_POST["C.E.N"];
$LIEUNAISSANCE=""; if(!empty($_POST["LIEUNAISSANCE"]))
$PRENOME=$_POST["LIEUNAISSANCE"];
$PROVINCENAISSANCE=""; if(!empty($_POST["PROVINCENAISSANCE"]))
$PRENOME=$_POST["PROVINCENAISSANCE"];
$PAYSE=""; if(!empty($_POST["PAYSE"]))
$PRENOME=$_POST["PAYSE"];

$SEXE=""; if(!empty($_POST["SEXE"]))
$SEXE=$_POST["SEXE"];

$NATIONALITE=""; if(!empty($_POST["NATIONALITE"]))
$NATIONALITE=$_POST["NATIONALITE"];

$TELEPHONNE=""; if(!empty($_POST["TELEPHONNE"]))
$TELEPHONNE=$_POST["TELEPHONNE"];
$PAYSE=""; if(!empty($_POST["ADRESSE"]))
$ADRESSE=$_POST["ADRESSE"];

$table="etudiant";
$query = "INSERT INTO $table(C.N.E,C.I.N,NOME,PRENOME,DATENAISSANCE,LIEUNAISSANCE,PROVINCENAISSANCE,PAYSE,SEXE,NATIONALITE,ADRESSE,TELEPHONNE)";
$query .= " VALUES('$C.N.E','$C.I.N','$NOME','$PRENOME','$20-10-83','$LIEUNAISSANCE','$PROVINCENAISSANCE','$PAYSE','$SEXE','$NATINALITE','$ADRESSE','$TELEPHONNE')"; // une ereur sur $NATINALITE
$result = mysql_query($query);

et pour mettre fin à la connexion j'ai mis :
mysql_close();
// ou bien mysql_close($connexion);

Peux-tu m'expliquer le CONSTRAINT c1 de ta table ?
0
ric
 
Je te prie de m'excuser, j'ai oublié toutes les formules de politesse.
bonjour, bon courage et bon après-midi.
0
mariah
 
bonjour,

je dois réaliser une inscription en ligne à l'aide de php et mysql, et comme c'est la premiére fois que je les utilise, je ne sais pas comment valider le remplissage des champs de mon formulaire, ni comment ajouter les informations à ma base de données..
j'ai trouvé le bout de code suivant pour me connecter à ma base:
<? // Paramètres persos
$host = "localhost";
$user = "root"; // vide ou "root" en local
$pass = ""; // vide en local
$bdd = "inscriptions"; // nom de la BD

$connexion = mysql_connect("$host",$user,$pass);
if (!$connexion) {
echo "Impossible d'effectuer la connexion";
exit;
}

//sélection de la BDD
$db = mysql_select_db("$bdd", $connexion);
if (!$db) {
echo "Impossible de sélectionner cette base données";
exit;
}

et pur inserer les valueres dans les atributs appropriés de la table choisie, j'ai utilisé le bout de code suivant , le shéma de la table séléctionnée:

etudiant ( CNE int(10),
CIN varchar(8),
NOME varchar(15),
PRENOME varchar(15),
DATENAISSANCE date,
PROVINCENAISSANCE varchar(20),
VILLENAISSANCE varchar(20),
PAYSNAISSANCE varchar(20),
SEXE varchar(8),
NATIONALITE varchar(10),
TELEPHONNE int (9),
ADRESSE varchar(40),
VILLE varchar(20),
PAYS varchar(20) )

le bout de code est:
$CIN=""; if(!empty($_POST["CIN"])) $CIN=$_POST["CIN"];

$CNE=""; if(!empty($_POST["CNE"])) $CNE=$_POST["CNE"];

$NOM=""; if(!empty($_POST["NOM"])) $NOM=$_POST["NOM"];

$PRENOM=""; if(!empty($_POST["PRENOM"])) $PRENOM=$_POST["PRENOM"];

$DATENAISSANCE=""; if(!empty($_POST["JJ"]) && !empty($_POST["MM"]) && !empty($_POST["AAAA"]) )
$DATENAISSANCE=$_POST["AAAA"."-"."MM"."-"."JJ"];

$VILLENAISSANCE=""; if(!empty($_POST["VILLE DE NAISSANCE"]))
$VILLENAISSANCE=$_POST["VILLE DE NAISSANCE"];

$PROVINCENAISSANCE=""; if(!empty($_POST["PROVINCE DE NAISSANCE"]))
$PROVINCENAISSANCE=$_POST["PROVINCE DE NAISSANCE"];

$PAYSNAISSANCE=""; if(!empty($_POST["PAYS DE NAISSANCE "]))
$PAYSNAISSANCE=$_POST["PAYS DE NAISSANCE"];

$TELEPHONNE=""; if(!empty($_POST["TELEPHONNE"]))
$TELEPHONNE=$_POST["TELEPHONNE"];

$ADRESSE=""; if(!empty($_POST["ADRESSE"]))
$ADRESSE=$_POST["ADRESSE"];

$VILLE=""; if(!empty($_POST["VILLE"])) $VILLE=$_POST["VILLE"];
$PAYS=""; if(!empty($_POST["PAYS"])) $PAYS=$_POST["PAYS"];
$SEXE=""; if(!empty($_POST["SEXE"]))
$SEXE=$_POST["SEXE"];

$NATIONALITE=""; if(!empty($_POST["NATIONALITE"]))
$NATIONALITE=$_POST["NATIONALITE"];
$table="étudiant";
$query = "INSERT INTO $table(CNE,CIN,NOME,PRENOME,DATENAISSANCE,PROVINCENAISSANCE,VILLENAISSANCE,PAYSNAISSANCE,SEXE,NATIONALITE,TELEPHONNE,ADRESSE,VILLE,PAYS)";
$query .= " VALUES('$C.N.E','$C.I.N','$NOME','$PRENOME','$DATENAISSANCE','$PROVINCENAISSANCE','$VILLENAISSANCE','$PAYSNAISSANCE','$SEXE','$NATIONALITE','$TELEPHONNE','$ADRESSE','$VILLE','$PAYS')";
$result = mysql_query($query);

et pour mettre fin à la connexion j'ai mis :
mysql_close($connexion); ?>

je vous prie de bien vouloir me renseigner sur la démarche à suivre, je ne reçoit aucun message d'erreur, mais je ne retrouve rien dans ma table..
SVP décrivez moi ce que je dois faire..
dans l'attente d'une réponse favorable de votre part, veuillez agréer mes considérations anticipées.

merci de votre lecture de mon message
0
ric
 
Rebonjour
Voici un code corrigé que je te laisse complèter.

<?php
// Paramètres persos
$host = "localhost";

// Pour moi, c'est vide en local
$user = ""; // vide ou "root" en local

$pass = ""; // vide en local
$bdd = "inscriptions"; // nom de la BD

// J'ai enlevé les guillemets
$connexion = mysql_connect($host,$user,$pass);

if (!$connexion) {
echo "Impossible d'effectuer la connexion";
exit;
}

//sélection de la BDD
$db = mysql_select_db("$bdd", $connexion);
if (!$db) {
echo "Impossible de sélectionner cette base données";
exit;
}

/*
Voici l'écriture standard de MySql (les noms de champ en minuscules et les attributs en majuscules)
etudiant ( cne INT(10),
cin VARCHAR(8),
nome VARCHAR(15),
prenome VARCHAR(15),

etc
Je te laisse faire la suite

DATENAISSANCE date,
PROVINCENAISSANCE varchar(20),
VILLENAISSANCE varchar(20),
PAYSNAISSANCE varchar(20),
SEXE varchar(8),
NATIONALITE varchar(10),
TELEPHONNE int (9),
ADRESSE varchar(40),
VILLE varchar(20),
PAYS varchar(20) )
*/

/*
Il te faudra tester le type de $_POST["cne"] et $_POST["telephone"] que tu as déclaré numérique (INT)
*/
$cin=""; if(!empty($_POST["cin"])) $cin=$_POST["cin"];
$cne=""; if(!empty($_POST["cne"])) $cne=$_POST["cne"];
$nom=""; if(!empty($_POST["nom"])) $nom=$_POST["nom"];
$prenom=""; if(!empty($_POST["prenom"])) $prenom=$_POST["prenom"];
echo "$cne $cin $nom $prenom<br>\n";

// pas d'accent dans le nom des tables et champs
// $table="étudiant";
$table="etudiant";

/* ne mélange pas les noms des champs
Exemple : prenome (avec un e final)
et les variables PHP
Exemple : $prenom (sans e final)
*/
$query = "INSERT INTO $table (cne,cin,nome,prenome) VALUES($cne,'$cin','$nom','$prenom')";
echo "$query<br>\n";

$result = mysql_query($query);
if (!$result) echo "L'insertion a échouée<br>\n";
mysql_close($connexion);
?>
0