IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Connexion SQL server à partir d'un formulaire php


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2017
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2017
    Messages : 43
    Par défaut Connexion SQL server à partir d'un formulaire php
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    <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 ?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Quand j'ai ouvert ton code dans FF, j'ai les messages d'erreurs suivants :

    ( ! ) Notice: Undefined index: server in C:\wamp\www\2.php on line 15
    Call Stack
    #	Time	Memory	Function	Location
    1	0.1008	391744	{main}( )	...\2.php:0
    
    ( ! ) Notice: Undefined index: login in C:\wamp\www\2.php on line 16
    Call Stack
    #	Time	Memory	Function	Location
    1	0.1008	391744	{main}( )	...\2.php:0
    
    ( ! ) Notice: Undefined index: password in C:\wamp\www\2.php on line 17
    Call Stack
    #	Time	Memory	Function	Location
    1	0.1008	391744	{main}( )	...\2.php:0
    De plus, je te conseille de placer ta partie PHP au début du code.

    Autre chose, dans tes variables ton $_POST doit être collé avec les crochets.
    Dernière modification par Invité ; 16/02/2020 à 17h22. Motif: Fusion des messages + mise en forme

  3. #3
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    Bonjour,

    @kurosakiichigo, pour les notice c'est normal vu que le code essaye d'accéder à des variables $_POST qui n'existent pas au chargement de la page (elles existent seulement après soumission du formulaire).
    Et bien qu'il s'agisse d'un affiche d'erreur, celles-ci ne sont pas "bloquantes" et ne sont donc pas à l'origine du problème.
    Et non, il n'est pas obligatoire de coller les crochets dans les tableaux bien que ça soit conseillé pour des soucis de lisibilité.

    Pour en revenir au problème, le code n'est pas très propre mais la première chose à faire est de tester sans le formulaire.
    Ensuite, quand ça fonctionne, s'assurer qu'on envoie bel et bien les valeurs (qu'on a précédemment testés) pour la connexion.

    Enfin, je n'ai jamais utilisé la fonction sqlsrv_connect() mais d'après sa documentation, ce n'est pas comme ça qu'on écrit la variable $connectionInfo
    Citation Envoyé par PHP Manual
    $connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
    D'après la documentation, ta variable $connection_info doit comporter des clés afin que la fonction puisse utiliser les valeurs. Or dans ton code, tu ne fais qu'écrire des valeurs (leurs index étant donc numériques) :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $connection_info = array($myDB, $login_def, $password_def); // Ce que tu as écrit
    $connection_info = array("Database" => $myDB, "UID" => $login_def, "PWD" => $password_def); // Ce qui semble plus correct d'après la doc

  4. #4
    Membre averti
    Femme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2017
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2017
    Messages : 43
    Par défaut
    En effet, je l'ai testé sans le formulaire. J'avais quelques erreurs mais je les ai rectifiée.

    @ darkstar123456: J'ai aussi corrigé $connectInfo selon ton commentaire et maintenant ça marche. Merci les gars

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SQL-Server] Connexion à SQL Server 2012 via PDO sous PHP 5.5.12
    Par mesken dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 23/11/2015, 22h20
  2. Problème connexion sql server à partir du Web
    Par lbrun79 dans le forum Administration
    Réponses: 2
    Dernier message: 25/08/2009, 09h08
  3. Connexion à Sql server 2005 par un script PHP
    Par zemeckis dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 27/02/2009, 09h19
  4. Comment remplir une BD sql server à partir d'un formulaire?
    Par Je-cherche-pfe dans le forum Windows Forms
    Réponses: 1
    Dernier message: 01/09/2007, 16h09
  5. Connexion à SQL Server depuis Easy PHP
    Par XGotX dans le forum Langage SQL
    Réponses: 1
    Dernier message: 01/03/2007, 11h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo