Damande d'aide a rectifie script php

Fermé
di_tunisian - 29 mars 2007 à 10:02
di_tunisian Messages postés 41 Date d'inscription lundi 26 mars 2007 Statut Membre Dernière intervention 25 février 2008 - 29 mars 2007 à 16:10
slt

j'ai fait un script php d'un espace administarteur qui contient login et mot de passe je voulais juste que l'utilisateur designé qui a le droit de se connecté

voici le script que j'ai fait :
<form name="f1" method="POST" action="login1.php">
login : <input type="text" name="login">
password : <input type="password" name="passe">

<input type="submit" name="Submit" value="Connexion" class="input" >
<input type="reset" name="Annuler" value="Annuler">


page login1.php


<?php

$connexion = mysql_connect('$server', '$user', '$pass');
mysql_select_db("database", $connexion);

$login=$_POST["login"];//parametre de configuration
$dpass=$_POST["dpass"];

$result=mysql_query("SELECT * FROM administrateur ", $connexion);
// Recuperation des resultats
if (mysql_fetch_row($result))

echo "Aucun enregitrement ne correspond\n";

else

while($rows=mysql_num_rows($result))
{
$login=$rows[1];
$dpass=$rows[2];
echo "$rows Rows\n";
}
?>


et ma table contient
login varchar et password varchar

es que quelqu'un peut m'aidé

merci d'avance
A voir également:

4 réponses

thomas_- Messages postés 97 Date d'inscription dimanche 7 janvier 2007 Statut Membre Dernière intervention 15 juin 2007 44
29 mars 2007 à 10:18
Bonjour, étudie ce code :

<?php
// on se connecte à la base
mysql_connect("tonhost", "tonlogin", "tonmotdepasse");
mysql_select_db("tabasededonnees");
// on vérifie que les variables ont été postées
if(isset($_POST["login"]) && isset($_POST["passe"]))
{
$l_valid = $_POST["login"];
$p_valid = $_POST["passe"];
// on fait la requête
$res = mysql_query(" SELECT * FROM `administrateur` WHERE login = ".$login." ");
// on vérifie qu'un enregistrement existe
if(@mysql_num_rows($res) > 0)
{
// on extrait les informations
$row = mysql_fetch_array($res);
// on vérifie maintenant le mot de passe, on le fait uniquement maintenant par mesure de sécurité
$password = $row["passe"];
// si ça correspond
if($p_valid == $password)
{
// on envoi vers la page cachée
header("Location:admin/index.php");
}
// sinon on renvoi à la page d'accueil
else header("Location:index.php?message=erreur");
}
else header("Location:index.php?message=erreur");
}
?>

Je te conseille d'apprendre maintenant les sessions pour permettre de vérifier que l'utilisateur a bien le droit d'accéder à la page demandée.

Thomas
0
di_tunisian Messages postés 41 Date d'inscription lundi 26 mars 2007 Statut Membre Dernière intervention 25 février 2008
29 mars 2007 à 10:54
j'ai essaye a rectifie mon code en basant a ce que tu m'a envoyé mais il ne marche pas il ne fait pas la connexion apres la verification du login et password saisi

comment faire!!!
0
thomas_- Messages postés 97 Date d'inscription dimanche 7 janvier 2007 Statut Membre Dernière intervention 15 juin 2007 44
29 mars 2007 à 14:10
Affiche nous la totalité de ton "nouveau" code.

Thomas
0
di_tunisian Messages postés 41 Date d'inscription lundi 26 mars 2007 Statut Membre Dernière intervention 25 février 2008
29 mars 2007 à 14:32
voici le nouveau code:


<?php
$l_valid = $_POST["login"];
$p_valid = $_POST["dpass"];
// on vérifie que les variables ont été postées
if(isset($_POST["login"]) && isset($_POST["dpass"]))
{

// on vérifie les informations du formulaire, à savoir si le pseudo saisi est bien un pseudo autorisé, de même pour le mot de passe
if ($l_valid== $_POST['login'] && $p_valid == $_POST['dpass'])
{
// dans ce cas, tout est ok, on peut démarrer notre session
// on la démarre :)
session_start ();
// on enregistre les paramètres de notre visiteur comme variables de session ($login et $pwd) (notez bien que l'on utilise pas le $ pour enregistrer ces variables)
$_SESSION['login'] = $_POST['login'];
$_SESSION['dpass'] = $_POST['dpass'];

include("configuration.php");//on se connecte a la base
// on fait la requête
$res = mysql_query(" SELECT * FROM `administrateur` WHERE login = ".$l_valid." ");
// on vérifie qu'un enregistrement existe
if(@mysql_num_rows($res) > 0)
{
// on extrait les informations
$row = mysql_fetch_array($res);
// on vérifie maintenant le mot de passe, on le fait uniquement maintenant par mesure de sécurité
$dpass = $row["dpass"];
// si ça correspond
if($p_valid == $dpass)
{
// on envoi vers la page cachée
header("Location:acc.php");
}
// sinon on renvoi à la page d'accueil
else header("Location:erreur.php");
}
}
?>

<form name="f1" method="POST" action="">

login :<input type="text" name="login">
password :<input type="password" name="dpass">
<input type="submit" name="Submit" value="Connexion" class="input" >
<input type="reset" name="Annuler" value="Annuler">
</form>
et mon table contient login varchar et password varchar

je veut que la page extrait les informations enregistreés dans la table administrateur
0
thomas_- Messages postés 97 Date d'inscription dimanche 7 janvier 2007 Statut Membre Dernière intervention 15 juin 2007 44
29 mars 2007 à 14:43
Re,

appelle une page "index.php", copie colle ce code dedans :

<?php
// on se connecte à la base
mysql_connect("tonhost", "tonlogin", "tonmotdepasse");
mysql_select_db("tabasededonnees");
// on vérifie que les variables ont été postées
if(isset($_POST["login"]) && isset($_POST["dpass"]))
{
$l_valid = $_POST["login"];
$p_valid = $_POST["dpass"];
// on fait la requête
$res = mysql_query(" SELECT * FROM `administrateur` WHERE login = ".$l_valid." ");
// on vérifie qu'un enregistrement existe
if(@mysql_num_rows($res) > 0)
{
// on extrait les informations
$row = mysql_fetch_array($res);
// on vérifie maintenant le mot de passe, on le fait uniquement maintenant par mesure de sécurité
$password = $row["password"];
// si ça correspond
if($p_valid == $password)
{
// on envoi vers la page cachée
header("Location:acc.php");
}
// sinon on renvoi à la page d'accueil
else header("Location:index.php?message=erreur");
}
// sinon on renvoi à la page d'accueil
else header("Location:index.php?message=erreur");
}
?>
<html>
<body>
<?php
// ici on s'occupe des messages d'erreur
if(isset($_GET["message"]))
{
if($_GET["message"] == "erreur") echo "Erreur dans le login et / ou mot de passe\n";
}
?>
<form name="f1" method="POST" action="index.php">
login :<input type="text" name="login">
password :<input type="password" name="dpass">
<input type="submit" name="Submit" value="Connexion" class="input" >
<input type="reset" name="Annuler" value="Annuler">
</form>
</body>
</html>

Tiens moi au courant,

Thomas
0
di_tunisian Messages postés 41 Date d'inscription lundi 26 mars 2007 Statut Membre Dernière intervention 25 février 2008
29 mars 2007 à 15:25
re
toujours rien , la conexion se fait on cliquant sur connexion meme les champs login et password vide
0
thomas_- Messages postés 97 Date d'inscription dimanche 7 janvier 2007 Statut Membre Dernière intervention 15 juin 2007 44
29 mars 2007 à 15:41
Précise un peu plus ce que tu veux faire, ici si je comprends bien tu veux que la connexion ne s'effectue pas si la personne ne rentre ni login ni password :

On prends les mêmes et on recommence, index.php :

<?php
// on se connecte à la base
mysql_connect("tonhost", "tonlogin", "tonmotdepasse");
mysql_select_db("tabasededonnees");
// on vérifie que les variables ont été postées
if(isset($_POST["login"]) && isset($_POST["dpass"]))
{
$l_valid = $_POST["login"];
$p_valid = $_POST["dpass"];
// on fait la requête
$res = mysql_query(" SELECT * FROM `administrateur` WHERE login = ".$l_valid." ");
// on vérifie qu'un enregistrement existe
if(@mysql_num_rows($res) > 0)
{
// on extrait les informations
$row = mysql_fetch_array($res);
// on vérifie maintenant le mot de passe, on le fait uniquement maintenant par mesure de sécurité
$password = $row["password"];
// si ça correspond
if($p_valid == $password)
{
// on envoi vers la page cachée
header("Location:acc.php");
}
// sinon on renvoi à la page d'accueil
else header("Location:index.php?message=erreur");
}
// sinon on renvoi à la page d'accueil
else header("Location:index.php?message=erreur");
}
?>
<html>
<body>
<script type="text/javascript">
function valider_login(frm)
{
if((frm.elements['login'].value != "") & (frm.elements['dpass'].value !=""))
{
return true;
}
else
{
return false;
}
}
</script>
<?php
// ici on s'occupe des messages d'erreur
if(isset($_GET["message"]))
{
if($_GET["message"] == "erreur") echo "Erreur dans le login et / ou mot de passe\n";
}
?>
<form name="f1" method="POST" action="index.php" onsubmit="return valider_login(this)">
login :<input type="text" name="login">
password :<input type="password" name="dpass">
<input type="submit" name="Submit" value="Connexion" class="input" >
<input type="reset" name="Annuler" value="Annuler">
</form>
</body>
</html>

Courage,

Thomas
0
di_tunisian Messages postés 41 Date d'inscription lundi 26 mars 2007 Statut Membre Dernière intervention 25 février 2008
29 mars 2007 à 16:10
re

je veut que la connexion exige un login et mot de passe que j'ai déja mis dans la table administrateur

esqu'il ya une fonction en php ou je doit faire ça en javascript
0