Résolu J'ai une erreur .PHP sur un code

iBOLD

Premium
Inscription
23 Novembre 2012
Messages
3 456
Réactions
1 490
Points
15 665
RGCoins
0
Salut à tous voici le code où il y a une erreur :

Code:
$query = mysql_query("INSERT INTO users VALUES('','$username','$password')");

Voici l'erreur :



Merci de votre aide :love: Il est 4 heures j'ai la tête en feu il se peut que l'erreur soit bête :blush:
 
mysql is depracated, passe à PDO, surtout que comme tu le fais, tu as un risque d'injection SQL.

PHP:
$query = $DB->prepare("INSERT INTO users (username, password) VALUES(:username, :password");
$query->bindParam(":username", $username, PDO:PARAM_STR);
$query->bindParam(":password", $password, PDO:PARAM_STR);
$query->execute();
$data = $query->fetchAll(PDO::FETCH_ASSOC);
 
Dernière édition:
mysql is depracated, passe à PDO, surtout que comme tu le fais, tu as un risque d'injection SQL.

PHP:
$query = $DB->prepare("INSERT INTO users (username, password) VALUES(:username, :password");
$query->bindParam(":username", $username, PDO:PARAM_STR);
$query->bindParam(":password", $password, PDO:PARAM_STR);
$query->execute();
$data = $query->fetchAll(PDO::FETCH_ASSOC);

L'erreur persiste toujours à la meme ligne :triste:
61eb7d4e019240cebe930f9fc9969883.png
 
quand tu veu metre du php dans du SQL fait comme ceci

PHP:
'.$username.'

PHP:
$result = $bdd->prepare('SELECT * FROM users WHERE username=" '.$username.' " OR email=" '.$email.' " ');
$result->execute();
Ça ne se fait pas, c'est pas du tout sécurisé.
 
Ou est le problème de sécu ?
Injection SQL, on peut facilement détourner ta requête pour en effectuer une autre.

>> https://reality-gaming.fr/threads/c...es-de-securite-web-les-plus-courantes.563243/

sa reviens au même que mètre un bindParam et sa gagne des ligne ;)
Non du tout, un binParam va d'une part augmenter tes performances et va éviter de passer tes variables inline ce qui permettra de combler des failles SQL possibles.

C'est une erreur courante, à lire :
 
Dernière édition par un modérateur:
Salut,
J'ai édité le titre de ta discussion pour que celle-ci soit plus compréhensible.

A l'avenir essaie de faire des titres plus longs et détaillés, plus le titre est long et détaillé, plus tu obtiendras de vues ainsi que des réponses .

Bonne fin d'après-midi,
Rwizz SEC
 
Salut à tous voici le code où il y a une erreur :

Code:
$query = mysql_query("INSERT INTO users VALUES('','$username','$password')");

Voici l'erreur :



Merci de votre aide :love: Il est 4 heures j'ai la tête en feu il se peut que l'erreur soit bête :blush:

Voici la solution à ta question :

PHP:
$query = mysql_query('INSERT INTO users VALUES("", "'.$username.'", "'.$password.'")');

Comme @Baptiste et @Rivals ont déjà expliqués ceci est loin d’être la bonne façon d'y procéder.
Mais vu que clairement tu débute en PHP, la programmation oriente objet (POO), devra être plus complexe pour toi.
 
Tu peux toujours utiliser mon tutoriel : https://reality-gaming.fr/threads/f...ec-votre-base-de-donnees-grace-a-base.585140/ mais vu que tu n'as pas les bases je ne pense pas que tu puisses l'utiliser :/
 
mysql_query :puke:
Ta demande est-elle résolue ?

Si oui, je t'invite à cliquer sur Cette réponse a répondu à ma question sur le message qui t'a aidé pour rajouter le préfixe résolu à la discussion. :)

Bonne fin de soirée,
Paul GTP
 
Retour
Haut