Page 1 sur 1

J'ai un très gros problème là... Sur les sessions... ???

Posté : 08 déc. 2006, 18:43
par Sif
Fichier loguer.html

Code : Tout sélectionner

<html> <head> <title>Connexion au site</title> </head> <body> <form method="post" action="verifLogin.php"> <table border="0" width="400" align="center"> <tr> <td width="200"><b>Vôtre login</b></td> <td width="200"> <input type="text" name="login"> </td> </tr> <tr> <td width="200"><b>Vôtre mot de passe<b></td> <td width="200"> <input type="password" name="password"> </td> </tr> <tr> <td colspan="2"> <input type="submit" name="submit" value="login"> </td> </tr> </table> </form> </body> </html>
Fichier verifLogin.php :

Code : Tout sélectionner

<?php $loginOK = false; if ( isset($_POST) && (!empty($_POST['login'])) && (!empty($_POST['password'])) ) { extract($_POST); //connexion à la base de données $liendb=mysql_connect("sql.free.fr","francewebmaster","****"); $db=mysql_select_db(francewebmaster); // On va chercher le mot de passe afférent à ce login $sql = "SELECT pseudo, mdp FROM user WHERE login = '".addslashes($login)."'"; $req = mysql_query($sql) or die('Le pseudo OU Le mdp est faux !!'.$sql); // On vérifie que l'utilisateur existe bien if (mysql_num_rows($req) > 0) { $data = mysql_fetch_assoc($req); // On vérifie que son mot de passe est correct if ($password == $data['mdp']) { $loginOK = true; } } } // Si le login a été validé on met les données en sessions if ($loginOK) { $_SESSION['pseudo'] = $data['pseudo']; $_SESSION['mdp'] = $data['mdp']; } else { echo 'Une erreur est survenue, veuillez réessayer !'; } ?>
Fichier alimenter.html :

Code : Tout sélectionner

<html> <form method="POST" action="add.php"> <center> <input type="text" name="pseudo" size="20" value="pseudo" maxlength="35"> <input type="text" name="mdp" size="20" value="mdp" maxlength="35"><br> <input type="submit" value="Envoyer" name="envoyer"> </center> </form> </html>
Fichier add.php :

Code : Tout sélectionner

<?php if(isset($_POST['pseudo'])) $pseudo=$_POST['pseudo']; else $pseudo=""; if(isset($_POST['mdp'])) $mdp=$_POST['mdp']; else $mdp=""; if(empty($pseudo) OR empty($mdp)) { echo '<font color="red">Attention, un ou plusieurs champs sont rester vide !</font>'; } else { $db = mysql_connect('sql.free.fr','francewebmaster','****') or die('Erreur de connexion '.mysql_error()); mysql_select_db('francewebmaster',$db) $sql = "SELECT id FROM user WHERE pseudo='$pseudo'"; $req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); // on compte le nombre de résultats $res = mysql_num_rows($req); if($res!=0) // l'url existe déjà, on affiche un message d'erreur { echo '<font color="red">Désolé, mais ce pseudo existe déjà...</font>'; } else // L'url n'existe pas, on insère les informations du formulaire dans la table { $sql = "INSERT INTO user(id, pseudo, mdp) VALUES('','$pseudo','$mdp')"; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); echo 'Vous avez été ajouter à France-Webmaster !'; mysql_close(); // on ferme la connexion } ?>

Suite

Posté : 08 déc. 2006, 18:50
par Invité
Bizarrement ou pas j'ai :

Code : Tout sélectionner

Parse error: syntax error, unexpected T_VARIABLE in /mnt/139/sdb/d/c/francewebmaster/session/add.php on line 25
Alors que je veux importer dans la base un pseudo et mdp comme si j'était un visiteur

Posté : 08 déc. 2006, 18:56
par Invité
Table user :

CREATE TABLE user (id INT not null AUTO_INCREMENT,
pseudo VARCHAR (50) not null ,

mdp VARCHAR (90) not null ,

PRIMARY KEY (id));

Posté : 08 déc. 2006, 19:00
par iclo
Tu as un problème de syntaxe, il faut regarder du côté de la ligne indiquée par le message d'erreur.

Posté : 08 déc. 2006, 19:20
par Invité
Ya pa plus précis ???

Posté : 08 déc. 2006, 20:03
par Hubert Roksor
Plus précis que le numéro de ligne où l'erreur se produit ? ben non. :( Il y a une variable à la ligne 25 alors que PHP s'attendait à autre chose.

PS : merci d'écrire dans un français convenable.

Posté : 08 déc. 2006, 20:19
par Invité
Quel est cette variable, par quoi la remplacer ?

Posté : 08 déc. 2006, 20:22
par Invité
Et dans quelle code ?

Posté : 08 déc. 2006, 20:28
par Ajoloca
Bonsoir,

Si tu indentais correctement ton code tu trouverais l'erreur sans soucis.
Dans add.php compte bien les accolades, je ne suis pas sur que le nombre de fermantes soit égal au nombre d'ouvrantes.

Posté : 08 déc. 2006, 20:47
par zeus
Parrallelement a ce qui a déjà été dit, quand un message d'erreur t'indiques une ligne dans un fichier, il faut regarder soit cette ligne, soit celle d'avant dans le fichier indiqué ;)