Chargement en cours...
Connexion au forum informatique de Sur-la-Toile
La discussion « Aide en PHP » se trouve dans le forum « Programmation »
Statut de la discussion » Aide en PHP « ( normale)

Aide en PHP

» Liste des Forums » Programmation » Discussion

Le 28 mai à 18:04 #

Salut à tous,

Je dois créer un site pour mon projet de terminale et je dois donc utiliser du PHP.
Problème je ne suis pas se qu'on pourrait qualifier d'un boss en PHP.
J ais besoin de votre aide car je dois faire du PHP afin d'accéder a un formulaire en utilisant le login et le mot de passe des utilisateur de ma base de donné.
Voici donc le script faites moi part des erreurs et des choses a modifier svp.
D'avance merci beaucoup pour ceux qui voudront bien m'aider.



<?PHP
//Affectation des valeurs saisies dans le formulaire signalerpanne dans une variable PHP
$login=$_POST['loginProprio'];
$password=$_POST['mdp'];

//Connexion au server mysql
$db=mysql_connect('localhost', 'root', '') or die ('erreur de connexion au serveur');
//Ouverture de la bdd
mysql_select_db ("gdv") or die ("erreur de connexion à la base de données gites du vertiges");
//Requete de recherche du login de l'utilisateur
$req="SELECT NomProprio,VilleProprio from proprio where loginProprio='".$login."';";
$resultat=mysql_query($req) or die ("erreur dans la requete");
$nbligne=mysql_num_rows($resultat);
$ligne=mysql_fetch_array($resultat);
echo $req;
If ($ligne['Login']=="$login")
{
include('formulaire_saisie.html'); //ouverture d'un formulaire
}
Else
{
echo "Votre identifiant n'éxiste pas ou est invalide. <br />";
echo "Veuillez vérifier votre identifiant";
}
//Fermeture de la bdd
mysql_close();

?>


(Modifié par ben le 28-05-2008 à 20:01)

Le 28 mai à 20:08 #

Salut,

Pour éviter qu'un petit malin ne puisse pirater ta base de données:

$req="SELECT NomProprio,VilleProprio from proprio where loginProprio='".addslashes($login)."';";

tu n'utilises pas cette information:
$nbligne=mysql_num_rows($resultat);

Il n'y a aucun élément "login" dans ta requete SQL, donc ça sera toujours faux
If ($ligne['Login']=="$login")

Tu ne vérifie pas le mot de passe?

Tu pourrais faire, par exemple:
$req="SELECT NomProprio,VilleProprio from proprio where loginProprio='".addslashes($login)."' AND mdp='".addslashes($mdp)."';";

Si la requête ne retourne rien, c'est que l'identifiant ou le mot de passe est mauvais, et tu les redemande.

Ben

Le 29 mai à 17:01 #

Ben à totalement raison. PHP est un langage super mais il faut faire attention à la sécurité.

Je rajouterais juste une chose par rapport au mot de passe : Si tu veux un peux plus de sécurité, amuse toi à le transformer en MD5.

Juste une explication. MD5 est en fait un algorithme de cryptage. Il transforme un texte en une "empreinte numérique" qui sera ensuite "impossible" à retranscrire... Tu dois donc définir ton champ en MD5 dans la base et lors du where tu dois utiliser la fonction MD5 de PHP pour faire la comparaison. C'est juste que si jamais un gentil pirate arrive dans ta base, il ne pourra pas lire tes mots de passe.

Bonne chance pour ton site

Le  9 juin à 13:07 #

Je pense que cela n'est pas son principal soucis pour l'instant, son site étant pour un TPE, la sécurité n'est pas primordiale.
» Liste des Forums » Programmation

Sujets Connexes

Arakien & WéWé


Forums

Navigation


Publicité

Connectés

Il y a actuellement 458 visiteurs et 26 toiliens en ligne, ainsi que 15 connectés sur le tchat.

Recherche

Annonces


Sauf mention contraire, le contenu du blog et du forum est sous licence Creative Commons By-Sa. Vous avez le droit de le reproduire à condition de citer l'auteur, de faire un lien vers la page d'origine, et de partager vos travaux dérivés selon les mêmes conditions.

Conditions d'utilisation -

Partenaires: [Informatique Multimédia] [Portail du Maroc] [Actualité High Tech]
[Tutoriaux Photoshop] [éligibilité ADSL] [Astuces Windows]

Page générée en 196 millisecondes sur WWW1.