Débutant à besoin d'aide pour créer accès réservé pour membre (donc écriture dan
sagat06
Messages postés166Date d'inscriptionmercredi 27 juin 2007StatutMembreDernière intervention31 mars 2014
-
23 oct. 2007 à 15:41
sagat06
Messages postés166Date d'inscriptionmercredi 27 juin 2007StatutMembreDernière intervention31 mars 2014
-
23 oct. 2007 à 18:21
Bonjour, je me suis mis il y a peu à la création d'un site web.
Partant de rien, j'ai vite progréssé en Hml, Javascript et CSS. Cependant, je dois désormais m'interesser à PHP/MySQL car je désire réaliser un accès réservé pour membre.
Donc ceux-ci doivent se connecter avec leur login et mot de passe s'ils sont déjà inscrits, ou doivent s'inscrire en fournissant divers informations qui seront stocker dans une base de données.
Voilà mes quelques connaissances (vraiment faible, je m'y suis mis y a quelques jours): j'arrive avec EasyPHP via PhpMyAdmin à créer une base de donnée et à créer les tables souhaitées. Jusque là tout va bien.
Cependant cela se complique lorsque justement je veux remplir ces tables. Par PhpMyAdmin, rien de plus simple. Mais je veux que ce soient les utilisateurs qui les remplissent (rien que de très logique).
Je me suis acheté le dernier PHP et My SQL "pour les nuls" et il y avait justement en exemple de ce que je veux faire, mais ça ne fonctionne pas (3ème édition p.401 Listing12.2).
En remplissant les formulaires et en les validant, rien ne se passe (la même page avec les formulaires est rechargée) et en allant voir avec PhpMyAdmin si les tables avaient été remplis
=> rien, nada, que dalle.
Bref, j'aimerais savoir si qq'un pourrait m'indiquer un tuto pour faire cela, ou un p'tit bout de code déjà tout fait (le fainéant en moi se réveille)
En espérant que vous pourrez m'aider.
Merci d'avance.
Signé Sagat
A voir également:
Débutant à besoin d'aide pour créer accès réservé pour membre (donc écriture dan
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 23 oct. 2007 à 15:54
salut
puisque t'as un code qui ne marche pas, envoi le nous, on te dira pourquoi il ne marche pas, et on t'aidera a le faire fonctionner, c'est plus rapide que de partir de 0
$cxn = mysqli_connect($host,$user,$password,$database) or die ("Connexion impossible au serveur dans case login");
$sql = "SELECT loginName FROM Member WHERE loginName='$_Post[fusername]'";
$result = mysqli_query($cxn,$sql) or die("Requête en échec 1.");
$num = mysqli_num_rows($result);
if ($num > 0){ // loginName trouvé
$sql = "SELECT loginName FROM Member WHERE loginName='$_POST[fusername]' AND password=md5('$_POST[fpassword]')";
$result2 = mysqli_query($cxn,$sql) or die("Requête en échec 2.");
$num2 = mysqli_num_rows($result2);
if ($num2 > 0){ // Mot de passe trouvé
$_SESSION['auth']="yes";
$logname=$_POST['fusername'];
$_SESSION['logname'] = $logname;
$today = date("Y-m-d h:i:s");
$sql = "INSERT INTO Login (loginName,loginTime) VALUES ('$logname','$today')";
$result = mysqli_query($cxn,$sql) or die("INSERT en échec.");
header("Location: membre_page.php"); }
else{ // Mot de passe incorrect
$message="Le nom de login '$_POST[fusername]' existe, mais le mot de passe est incorrect. Réessayer.
";
include("login_form.inc.php");
}
}
elseif ($num==0){ // Nom de login introuvable
$message = "Le nom de login que vous avez saisi n'existe pas. Réesayer.
";
include("login_form.inc.php");
}
break;
case "new":
/* Recherche des champs vides */
foreach($_POST as $field => $value){
if ($value=="") {
$blanks[]=$field;
}
}
if(isset($blanks)) {
$message_new="Champs non saisis. Veuillez les renseigner: ";
foreach($blanks as $value){
$message_new.="$value, ";
}
extract($_POST);
include("login_form.inc.php");
exit();
}
/* Validation des données */
foreach($_POST as $field => $value){
if(!empty($value)) {
if(eregi("name",$field) and !eregi("login",$field)) {
if(!ereg("^[A-Za-z' -]{1,50}$",$value)) {
$errors[]="$value n'est pas un nom valide.";
}
}
if(eregi("street",$field) or eregi("city",$field)) {
if(!ereg("^[A-Za-z0-9.,' -]{1,50}$",$value)) {
$errors[]="$value est incorrect.";
}
}
if(eregi("email",$field)) {
if(!ereg("[mailto:^.+@.+\\..+$",$value ^.+@.+\\..+$",$value])) {
$errors[]="$value est refusé comme email.";
}
}
if(eregi("zip",$field)) {
if(!ereg("^[0-9){5,5}(\-[0-9]{4,4}?$",$value)) {
$errors[]="$value n'est pas un Code Postal autorisé.";
}
}
}
}
sagat06
Messages postés166Date d'inscriptionmercredi 27 juin 2007StatutMembreDernière intervention31 mars 20141 23 oct. 2007 à 16:24
Re-moi,
juste pour préciser:
le 'do' utilisé dans le switch est donné via le input type hidden adéquate fourni par la soumission du formulaire (soit déjà inscrit => do=login, sinon do=new)