par
bastien71 » 25 févr. 2006, 00:12
Salut à tout.
J'ai un problème avec un script, ca fait plusieurs heures que je cherches, et je vois vraiment pas de quoi ca peut venir...
Les symptomes :
J'ai un formulaire d'identification. Une fois identifié, le script place un cookies pour dire que l'on est identifié, et un ou deux autres pour des histoires relatives à cette identification (pseudo, et rang).
Seulement voila... au début, il fallait que je m'identifie 2 fois de suite. pourquoi? je n'en sais rien. E maintenant, lorsque le mdp/login sont corrects, cela réaffiche le formulaire de connexion, et ne place pas de cookies... et je ne comprends pas pourquoi. Je fais donc appel à vous. je place ici la partie que je pense incriminée, et vous met un lien vers le script complet.
Code : Tout sélectionner
<?php
$pagedem = $_GET['page'];
$bienvenue = "Veuillez entrer vos identifiants de connection";
if (isset($_POST['name']) || isset($_POST['pass'])) {
// formulaire recu
// verifie les valeurs
if (empty($_POST['name'])) {
die ("ERREUR: Entrez un nom d'utilisateur!");
}
if (empty($_POST['pass'])) {
die ("ERREUR: Veuillez entrer un mot de passe!");
}
// Defini les variable d'acces au serveur mySQL
$host = "xxx";
$user = "dxxx";
$pass = "xxx";
$db = "xxx5";
// Ouvre la connexion
$connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!");
// Selectionne la base
mysql_select_db($db) or die ("Unable to select database!");
// Construit la requete
$query = "SELECT statut FROM membre WHERE pseudo = '" . $_POST['name'] . "' AND pass = '" . $_POST['pass'] . "' ";
// Execute la requete
$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
$tableau = mysql_fetch_array($result);
$_SESSION['statut'] = $tableau['statut'];
$statut = $tableau['statut'];
// Regarde les valeurs retournees par la base
if (mysql_num_rows($result) == 1) {
session_start();
$_SESSION['auth'] = 1;
setcookie("username", $_POST['name'], time()+(10080));
setcookie("session", 1, time()+(10080));
setcookie("statut", $tableau['statut'], time()+(10080));
}
else {
// pas de résultat
// authentification impossible
$bienvenue = "Login ou mot de passe incorrect";
}
// Libere le resultat
mysql_free_result($result);
// Ferme la connexion
mysql_close($connection)
?>
La page entiere :
http://fusee-eau.info/perso/script.txt
Merci beaucoup si vous pouvez me tirer de la

Salut à tout.
J'ai un problème avec un script, ca fait plusieurs heures que je cherches, et je vois vraiment pas de quoi ca peut venir...
Les symptomes :
J'ai un formulaire d'identification. Une fois identifié, le script place un cookies pour dire que l'on est identifié, et un ou deux autres pour des histoires relatives à cette identification (pseudo, et rang).
Seulement voila... au début, il fallait que je m'identifie 2 fois de suite. pourquoi? je n'en sais rien. E maintenant, lorsque le mdp/login sont corrects, cela réaffiche le formulaire de connexion, et ne place pas de cookies... et je ne comprends pas pourquoi. Je fais donc appel à vous. je place ici la partie que je pense incriminée, et vous met un lien vers le script complet.
[code]
<?php
$pagedem = $_GET['page'];
$bienvenue = "Veuillez entrer vos identifiants de connection";
if (isset($_POST['name']) || isset($_POST['pass'])) {
// formulaire recu
// verifie les valeurs
if (empty($_POST['name'])) {
die ("ERREUR: Entrez un nom d'utilisateur!");
}
if (empty($_POST['pass'])) {
die ("ERREUR: Veuillez entrer un mot de passe!");
}
// Defini les variable d'acces au serveur mySQL
$host = "xxx";
$user = "dxxx";
$pass = "xxx";
$db = "xxx5";
// Ouvre la connexion
$connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!");
// Selectionne la base
mysql_select_db($db) or die ("Unable to select database!");
// Construit la requete
$query = "SELECT statut FROM membre WHERE pseudo = '" . $_POST['name'] . "' AND pass = '" . $_POST['pass'] . "' ";
// Execute la requete
$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
$tableau = mysql_fetch_array($result);
$_SESSION['statut'] = $tableau['statut'];
$statut = $tableau['statut'];
// Regarde les valeurs retournees par la base
if (mysql_num_rows($result) == 1) {
session_start();
$_SESSION['auth'] = 1;
setcookie("username", $_POST['name'], time()+(10080));
setcookie("session", 1, time()+(10080));
setcookie("statut", $tableau['statut'], time()+(10080));
}
else {
// pas de résultat
// authentification impossible
$bienvenue = "Login ou mot de passe incorrect";
}
// Libere le resultat
mysql_free_result($result);
// Ferme la connexion
mysql_close($connection)
?>
[/code]
La page entiere :
http://fusee-eau.info/perso/script.txt
Merci beaucoup si vous pouvez me tirer de la ;-)