Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2002 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Problême injection sql

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problême injection sql

n°1907686
Av4l0n
Posté le 22-07-2009 à 16:19:47  profilanswer
 


<?php
   if(!(empty($_POST['username']) empty($_POST['password']))) {
   mysql_connect('localhost', 'root', '');
   mysql_select_db('phpsol');
   
   $sql SELECT * FROM `acces` WHERE `login` = \'' . $_POST['username'] . '\' AND 'password' = \'' . sha1($_POST['password']) .'\';
   $result = mysql_query($sql);
 
   if(mysql_num_rows($result) == 1) {
   echo 'Success';
   }
   else {
   echo 'Denied';}
   }
 
?>


Message édité par Av4l0n le 22-07-2009 à 17:30:45
mood
Publicité
Posté le 22-07-2009 à 16:19:47  profilanswer
 

n°1907687
esox_ch
Posté le 22-07-2009 à 16:25:39  profilanswer
 

Salut,
 
- Met ton code entre balises "code=php" dans ton topic, on y voit rien là
- Avant de nous présenter ton code, assure toi qu'il ne génère pas d'erreur PHP quand tu y accèdes, en effet je doute que :
 

Code :
  1. if(!(empty($_POST['username']) empty($_POST['password'])))


 
,sans le || entre les 2 fonctions empty, passe


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1907689
stealth35
Posté le 22-07-2009 à 16:29:49  profilanswer
 

en plus y'a rien pour les injections la,
mets un mysql_real_escape_string,  
ou passe sous PDO ca sera plus simple,  
 
HS :
je trouve ca dommage que dès que quelqu'un veuille débuté part sur de mauvaise base, que ca soit les tutos les plus connus, ou les enseignants, c'est toujours du code qui date de 10 ans.

n°1907690
Tirkyth
Posté le 22-07-2009 à 16:30:32  profilanswer
 

Dans tous les cas, tu ne devrais jamais utiliser une variable provenant des tableaux $_GET et $_POST directement pour l'intégrer dans une requête.
 
Tu devrais au minimum (et j'insiste sur le fait que c'est vraiment le minimum) les passer dans un mysql_real_escape_string (http://fr2.php.net/manual/en/function.mysql-real-escape-string.php)


---------------
Mon Feedback !
n°1907693
esox_ch
Posté le 22-07-2009 à 16:38:39  profilanswer
 

Faut arrêter d'utiliser aussi cette fonction qui a 10 ans hein :o
Utilisez les prepared statements et tout devient plus simple/rapide/sûr . Ou alors PDO comme le dit stealth35


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1907717
Av4l0n
Posté le 22-07-2009 à 17:31:45  profilanswer
 

Oki je vais essayer, par contre je suis newbi à mort dans se domaine, en faite je connais très bien le html mais le php j'avoue que j'ai du mal

n°1907726
Av4l0n
Posté le 22-07-2009 à 18:09:52  profilanswer
 

Est ce que vous connaissez un très bon moyen de débuter le php ?

n°1907727
Pascal le ​nain
Posté le 22-07-2009 à 18:32:09  profilanswer
 
n°1907746
esox_ch
Posté le 22-07-2009 à 20:16:00  profilanswer
 

 

Comme toujours le site du zéro doit vraiment être considéré comme un site qui donne les bases, des bases, des bases.
Malheureusement beaucoup de gens le prennent pour une référence, alors qu'il est rempli de "passe-droits" et inexactitudes qui l'aident à rendre les pages plus courtes et simples à expliquer. Il faut vraiment retenir que dès qu'on a compris le site du zéro, il faut bien se dire "Bon, maintenant je suis prêt à apprendre comment les choses marchent en réalité" et s'orienter vers quelque chose de plus complet et correcte

 

Edit: Mais encore une fois, je trouve que ceux qui sont derrière ce site on fait un beau boulot de vulgarisation hein :heink:, je leur reproche juste de ne pas mettre assez en avant le fait qu'ils donnent uniquement les bases

Message cité 1 fois
Message édité par esox_ch le 22-07-2009 à 20:17:45

---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1907799
Pascal le ​nain
Posté le 23-07-2009 à 00:09:20  profilanswer
 

esox_ch a écrit :


 
Comme toujours le site du zéro doit vraiment être considéré comme un site qui donne les bases, des bases, des bases.
Malheureusement beaucoup de gens le prennent pour une référence, alors qu'il est rempli de "passe-droits" et inexactitudes qui l'aident à rendre les pages plus courtes et simples à expliquer. Il faut vraiment retenir que dès qu'on a compris le site du zéro, il faut bien se dire "Bon, maintenant je suis prêt à apprendre comment les choses marchent en réalité" et s'orienter vers quelque chose de plus complet et correcte
 
Edit: Mais encore une fois, je trouve que ceux qui sont derrière ce site on fait un beau boulot de vulgarisation hein :heink:, je leur reproche juste de ne pas mettre assez en avant le fait qu'ils donnent uniquement les bases


Très juste. Un tutos sert à apprendre les usages courants. Si tu veux vraiment apprendre faut expérimenter par toi-même. "Tiens si je faisais ca ? Ca marche toujours ?"

mood
Publicité
Posté le 23-07-2009 à 00:09:20  profilanswer
 

n°1907801
esox_ch
Posté le 23-07-2009 à 00:13:58  profilanswer
 

Oui déjà ça, mais aussi lire un bon tuto/livre bien complet..
Faut pas se faire d'illusions, PHP a beau être un langage simple, c'est pas en 15 min sur le site du zéro qu'on va apprendre grand chose. On va juste apprendre de quoi assimiler plus vite la suite


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1907821
Pascal le ​nain
Posté le 23-07-2009 à 08:26:05  profilanswer
 

J'ai jamais utilisé de bouquin ni de tuto super complexe. J'ai simplement essayé de faire des sites de plus en plus complexe, en testant, et en me référant a la doc, ca suffit largement.
Et pis php c'est pas un langage hyper violent quand même...


Message édité par Pascal le nain le 23-07-2009 à 08:27:14
n°1907828
esox_ch
Posté le 23-07-2009 à 08:56:10  profilanswer
 

Bien sur on peut aquérir les connaissance un peu à la fois, en essayant plein de trucs et en lisant de la doc par ci par là.
Mais quand on regarde le nombre de tuto qui proposent une POO orientée objet, respectant les normes de nomenclature pour les fonctions & co, qui propose d'utiliser des concepts comme les requêtes préparées ou alors des systèmes comme PDO  ... bein il y a pas à se réjouir.. La grande majorité des tuto c'est plutôt du style register_global on + include($toto) :heink:

Message cité 1 fois
Message édité par esox_ch le 23-07-2009 à 11:14:20

---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1907879
skeye
Posté le 23-07-2009 à 11:01:43  profilanswer
 

esox_ch a écrit :

une POO orientée objet


par rapport à? une POO pas orientée objet?[:petrus dei]


---------------
Can't buy what I want because it's free -
n°1907883
esox_ch
Posté le 23-07-2009 à 11:13:33  profilanswer
 

Mes doigts ont fourché désolé :D
Je voulais dire une programmation orientée objet, ou une POO, et un mix des 2 est sorti :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Problême injection sql

 

Sujets relatifs
problème de filtre vba macro Excel Pattern Java | Probleme ecriture dans fichier texte.
[mySQL] problème à l'insertion de polygoneprobleme avec fck editor
problème avec fsockopen()problème bouton suivant (cocoa)
Problème "OLE DB Provider for ODBC Drivers error"problème de positionnement entre IE et FireFox ...
probleme instalation wordpress µ avec easyPHP en local[Résolu] Problème lors du tri d'un vecteur d'itérateurs
Plus de sujets relatifs à : Problême injection sql


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR