Problème de mise en relation formulaire\BaseDeDonnée + Erreur. - PHP - Programmation
Marsh Posté le 07-03-2017 à 20:34:17
Alors... il y a pas mal de choses à dire...
Tout d'abord en ce qui concerne le problème avec la base de donnée.
Quand on configure une base de données, on y créé des utilisateurs pour se connecter de certains endroits uniquement.
Il existe par défaut un compte administrateur ayant tous les privilèges et pouvant faire tout ce qu'il veut.
Ton erreur indique que la connexion en tant que "root" sans mot de passe a été rejetée.
Il s'agit très probablement d'une règle de sécurité visant à obliger la saisie d'un mot de passe sur le compte administrateur de la base de données. On ne laisse JAMAIS un compte administrateur sans mot de passe.
Ensuite, il convient généralement de créer un utilisateur dédié pour les application qui vont se connecter à la base de données.
Mettre un mot de passe sur le compte "root" du serveur mysql devrait régler ton problème. Mais je te suggère vivement de créer un compte applicatif dédié avec une base de données également dédiée à ton application.
Et il y a d'autres problèmes dans ce que tu as posté ici :
- L'injection SQL...
Il existe plein de documentation, mais pour te faire comprendre par l'exemple, regarde ce qui se passera lors de ton traitement (lorsque tu auras résolu ton problème de connexion) si tu saisis une apostrophe dans le nom de l'entreprise dans ton formulaire.. Si tu utilises une version récente de PHP (Sans l'option "magic quotes" par défaut), ta requête devrait échouer.
La documentation de mysqli_real_escape_string devrait t'aider à comprendre...
- fonctions mysql et mysqli
Tu fais des mixs : tu utilises une fonction "mysqli" pour la connexion, et une fonction de type "mysql" pour exécuter ta requête d'insert.
Comme le suggère PHP, tu devrais utiliser PDO, qui donne des méthodes natives de protection contre l'injection SQL et une implémentation objet de la connexion de base de données.
En espérant t'avoir aidé
Marsh Posté le 07-03-2017 à 19:09:50
Bonjour,
Je me permet de vous demandez de l'aide car ça vas faire maintenant 3 mois que je cherche une solution a mon problème de base donnée.
Tout d'abord j'ai créer un site en HTML classique. Il contient 3 pages dont un avec un formulaire et c'est la que intervient mon problème.
J'utilise easyphp.
Présentation des documents :
Mon formulaire de commande :
Et mon document traitement.php :
Énonciation des problèmes rencontrer :
Et donc quand je remplis mon formulaire et que je fais "envoyer" :
1 - Ca m'envois directement sur
2 - J'ai tous ca qui s'affiche :
J'arrive donc a avoir le résultat de "entreprise", "materiels", "Piece", "pseudo", "mdp".
Sauf que je les reçois pas sur ma base de donnée mais juste après avoir remplis mon formulaire. (a la vue de tous ?)
3 - Mon formulaire n'envoit aucun résultat a ma base de données qui est pourtant bien définit.
Merci de votre aide et si il vous faut des indications pour résoudre ce problème dites le moi.
Au revoir.