Page 1 sur 1

Connexion bd sql server à partir d'un formulaire

Posté : 12 févr. 2020, 17:59
par salwa175
Bonjour,

Je suis novice en php. Je cherche à me connecter à une base de données sql server 2014 à partir d'un formulaire mais je n'arrive.

Voici mon code:

Code : Tout sélectionner

<html> <head><title>Formulaire de connexion à LINA </title></head> <body> <h1>Renseigner les codes d'acces</h1> <h2>Entrez les donnees demandees :</h2> <form method="POST"> <fieldset><legend>Server : </legend><input type="text" name="server"/></fieldset> <fieldset><legend>Login : </legend><input type="text" name="login"/></fieldset> <fieldset><legend>Mot de passe : </legend><input type="password" name="password"/></fieldset> <input type="submit" name="submit" value="Se connecter"/> </form> <?php $server = $_POST ['server']; $login = $_POST ['login']; $password = $_POST ['password']; $server_def = "localhost\SQL2014"; $login_def = "sa"; $password_def = "Imap0910"; $myDB = 'LINA'; $connection_info = array ($myDB, $login_def, $password_def); if(isset($_POST ['submit'])) { if(!empty($_POST['server']) && !empty($_POST['login']) && !empty($_POST['password'])) { if (($server==$server_def) && ($login==$login_def) && ($password==$password_def)) { $connect = sqlsrv_connect($server_def, $connection_info); if ($connect) { echo "connexion réussie"; } } } echo "Tous les champs sont obligatoire obligatoire"; } echo "renseigner les champs"; ?> </body> </html>
Je ne sais où est l'erreur.

Pouvez-vous m'aider à trouver l' ou les erreurs svp ?

Re: Connexion bd sql server à partir d'un formulaire

Posté : 12 févr. 2020, 18:17
par @rthur
Il faut probablement que tu indiques les identifiants pour te connecter à la base de données.
Par ailleurs, je te recommande d'ajouter une gestion d'erreur pour voir les messages d'erreur car sinon tu code à l'aveugle et c'est compliqué/impossible de débuguer :-)

Met en place l'exemple 2 de la doc dans un script à part pour commencer :
https://www.php.net/manual/fr/function. ... onnect.php
Une fois que ça marchera tu l'intégrera dans ton script avec le formulaire et le reste.

Re: Connexion bd sql server à partir d'un formulaire

Posté : 14 févr. 2020, 12:15
par salwa17
Oui tu as raison pour le compilateur, c'est pour ça que je compile avec des compilateur en ligne.

J'ai rectifié la partie php sans mettre la partie html et ça se connecte à la base.

Par contre quand j'ajoute le code html pour que je saisisse les informations de connexion. à l'appui sur se connecter j'ai rien aucun message : connecté à la base ou pas ...

Voici le code rectifié.

Code : Tout sélectionner

<html> <head><title>Formulaire de connexion à LINA </title></head> <body> <h1>Renseigner les codes d'acces</h1> <h2>Entrez les donnees demandees :</h2> <form method="POST"> <fieldset><legend>Server : </legend><input type="text" name="server"/></fieldset> <fieldset><legend>Login : </legend><input type="text" name="login"/></fieldset> <fieldset><legend>Mot de passe : </legend><input type="password" name="password"/></fieldset> <input type="submit" name="submit" value="Se connecter"/> </form> <?php if(isset($_POST ['submit'])) { $server = $_POST ['server']; $login = $_POST ['login']; $password = $_POST ['password']; $server_def = "localhost\SQL2014"; $login_def = "sa"; $password_def = "Imap0910"; $myDB = 'LINA'; $connection_info = array ("Database" => "LINA", "UID" => "sa", "PWD" => "Imap0910"); if(!empty($server) && !empty($login) && !empty($password)) { if (($server==$server_def) && ($login==$login_def) && ($password==$password_def)) { $connect = sqlsrv_connect($server_def, $connection_info); if ($connect) { echo "connexion réussie. <br />"; } else { echo "connexion échouée. <br />"; die ( print_r (sqlsrv_errors(), true)); } } echo "bd non connectée"; } echo "Tous les champs sont obligatoire"; } ?> </body> </html>

J'ignore pourquoi. Avez-vous des réponses svp ?