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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Connexion à la base de données en localhost avec Wampserver [Wamp]


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2008
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Service public

    Informations forums :
    Inscription : Février 2008
    Messages : 144
    Par défaut Connexion à la base de données en localhost avec Wampserver
    Bonjour,

    Je débute en programmation web et je me suis formé avec les livres.
    Je suis arrivé à m'en sortir et avoir un résultat sur mon premier site que je créé pour un besoin perso.
    J'ai terminé la formation html 5 /css et suis en cours sur le livre concevez votre site web avec PHP et MYSQL.

    J'ai préparé le programme ci dessous pour lequel je vais alimenter à partir d'une base de données.
    J'ai installé WAMPSERVER dernièrement dont php est la version 5.5.12 et mysql est la version 5.6.17.

    J'ai écrit le code ci dessous avec la première formation et je tente d'afficher une information simple depuis une base de données :
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    <!doctype html>
    <html>
    	<head>
    		<meta charset = "utf-8"/>
    		<link rel="stylesheet" href="stylefond.css"/>
    		<link rel="stylesheet" href="stylemenu.css"/>
    		<title>portefeuille charge d affaire raccordement c5 </title>
    	</head>
     
    	<body>
    	<div id="tout">
    		<header>
    			<div id="titrepage">
    				<h2> MENU PRINCIPAL </h2>
    				<h1> OUTIL APPUI CHARGE <br> D AFFAIRE RACCORDEMENT C5 </h1>
    			</div>
    			<img src="tnlogo.png" class="logo" alt="logo"/>
    		</header>
    		<?php
    		try
    		{
    			$bdd = new PDO( 'mysql:host=localhost;dbname=suivracc5','root@localhost','');
    		}
    		catch (Exception $e)
    		{ 
    			die('Erreur : '.$e->getMessage());
    		}
    		$reponse = $bdd -> query('SELECT * FROM test') or die( print_r($bdd->errorinfo()));
     
    		while ($donnees = $reponse->fetch());
    			{
    			 ?>
    			 <p>
    				le numero d'enregistrement portant le <?php echo $donnees['id']; ?> contient l'information <?php echo $donnees['titre']; ?> <br />
    				le contenu est <?php echo $donnees['contenu']; ?> <br />
    			</p>
    			<?php
    			}
    		$reponse -> closeCursor();
    		?>
    		<section>
    			<article>
    				<table class="tableprincipal">
    					<caption> LISTE DES FICHIERS <?php echo "nom du fichier pour indiquer la liste"?> </caption>
    					<tr>
    						<th> OSR </th>
    						<th> COMMUNE </th>
    						<th> NOM CLIENT </th>
    					</tr>						
    				</table>
    			</article>
    			<aside>
    					<table class="tablemenu">
    						<caption> ETAT DU PORTEFEUILLE</caption>
    						<tr>
    							<th> LISTE </th>
    							<th> NOMBRE</th>
    						<tr>
    							<td> <a href=#> ETUDE EN COURS </a>
    							<td> nombre de php  </a>
    						</tr>
    						<tr>
    							<td> <a href=#> ATTENTE PAIEMENT </a> </td>
    							<td> nombre de php  </a></td>
    						</tr>
    						<tr>
    							<td> <a href=#> COMMANDE TRAVAUX </a></td>
    							<td> nombre de php  </a></td>
    						</tr>
    						<tr>
    							<td> <a href=#> PROGRAMMEE </a></td>
    							<td> nombre de php  </a></td>
    						</tr>
    						<tr>
    							<td> <a href=#> TERMINE AVEC ECART OU SUIVI</a></td>
    							<td> nombre de php  </a></td>
    						</tr>
    						<tr>
    							<td> <a href=#>PAIEMENT SUPERIEUR A 3 MOIS </a></td>
    							<td> nombre de php  </a></td>
    						</tr>
    						<tr>
    							<td> <a href=#> PAIEMENT SUPERIEUR A 6 MOIS </a></td>
    							<td> nombre de php  </a></td>
    						</tr>
    						<tr>
    							<td> <a href=#> REALISEE </a></td>
    							<td> nombre de php  </a></td>
    						</tr>
    						<tr>
    							<td> <a href=#> ABANDON CLIENT </a></td>
    							<td> nombre de php  </a></td>
    						</tr>
    						<tr>
    							<td> <a href=#> ENVOIE EXTENSION </a></td>
    							<td> nombre de php  </a></td>
    						</tr>
    						<tr>
    							<td> <a href=#> ENVOIE COLLECTIF </a></td>
    							<td> nombre de php  </a></td>
    						</tr>
    					</TABLE>
    					<nav>
    						<ul>
    							<li> <a href=# >VOIR / MODIFIER LE DOSSIER  </A> </li> <br>
    							<li> <a href=# >CREER UN DOSSIER  </A> </li><br>
    							<li> <a href=# >RECHERCHER UN DOSSIER  </A> </li>
    						</UL>
    					</nav>
    					<form>
    						<input type="text" name="rech" id="rech"/>
    						<input type="submit" value="RECHERCHER"
    					</form>
    			</aside>
    		</section>
    		<?php include ("PIEDPAGE.PHP");?>
    	</div>
    	</body>
    </html>
    J'ai fait quelques recherches et j'ai installé du code pour avoir l'erreur qui se génère.
    J'obtient actuellement ce message d'erreur :
    Erreur : SQLSTATE[HY000] [1045] Acc�s refus� pour l'utilisateur: 'root@localhost'@'@localhost' (mot de passe: NON)
    Il s'agit à priori d'un refus d'accès à la base de donnée.
    Je n'ai pas de code d'accès en sql car j'ai vérifié.
    Les noms de base de données et tables sont correct.

    je ne trouve pas l'erreur.

    j'ai pas contre trouvé sur internet que les versions 5 de php fonctionné avec mysqli à priori ?
    Mais je ne trouve pas comment je dois adapté mon code et je ne trouve pas l'extension php-pdo-mysqli.

    Pouvez vous me mettre sur une piste afin que je comprenne mon erreur et adapte mon code ?

    Merci pour votre aide.

  2. #2
    Nb
    Nb est déconnecté
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 163
    Par défaut
    ton utilisateur est "root" pas "root@localhost" je pense.
    essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $bdd = new PDO( 'mysql:host=localhost;dbname=suivracc5','root','');

  3. #3
    Membre émérite
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2012
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2012
    Messages : 381
    Par défaut
    Bonjour,

    Le code étant déjà écrit avec PDO, il n'y a pas trop d'intérêt à changer pour mysqli.

    A côté du problème du nom de l'utilisateur, il semble quand même y avoir quelques soucis avec le HTML : dans le tableau, il y a des balises <td> ouvertes mais pas fermées et des balises </a> sans la balise <a> et ligne 112, la balise input n'est pas fermée (après "RECHERCHER").

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

    ...J'ai installé WAMPSERVER dernièrement dont php est la version 5.5.12 et mysql est la version 5.6.17...
    Houlà...
    Tu aurais intérêt à installer la DERNIERE version : http://www.wampserver.com

    WampServer 64 bits (x64) 3.0.6
    – Wampserver 3.1.0 64 bit x64 – Apache 2.4.27 – PHP 5.6.31, 7.0.23, 7.1.9 – MySQL 5.7.19 ...

  5. #5
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2008
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Service public

    Informations forums :
    Inscription : Février 2008
    Messages : 144
    Par défaut suite à vos conseils une avancée mais pas encore une réussite
    Bonjour tout le monde,

    Merci pour vos réactions et votre aide.

    J'ai procédé aux modifications proposées par xdelatour que je n'avais pas vu, car j'avais pas de souci actuellement de présentation et de chargement.

    La modification proposé par nb qui me propose de changer l'utilisateur était ma solution de départ et j'avoue le changement par "root" permet de ne pas avoir de message d'erreur et voir la page se chargée.
    Malheureusement je n'ai aucune information qui remonte de ma base de donnée, les champs sont vides.
    J'avais mis le dernier nom indiqué suite à une recherche sur internet.

    J'ai adapté ma page avec l'exemple de connection que propose jreaux62.
    ci dessous le code adapté :
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    !doctype html>
    <html>
    	<head>
    		<meta charset = "utf-8"/>
    		<link rel="stylesheet" href="stylefond.css"/>
    		<link rel="stylesheet" href="stylemenu.css"/>
    		<title>portefeuille charge d affaire raccordement c5 </title>
    	</head>
     
    	<body>
    	<div id="tout">
    		<header>
    			<div id="titrepage">
    				<h2> MENU PRINCIPAL </h2>
    				<h1> OUTIL APPUI CHARGE <br> D AFFAIRE RACCORDEMENT C5 </h1>
    			</div>
    			<img src="tnlogo.png" class="logo" alt="logo"/>
    		</header>
    		<?php
    			// --------------------------------------------------------------
    			// Paramètres de connection à la Base de Données sur le serveur
    			// --------------------------------------------------------------
    			$pdo_conn = array();
    			$pdo_conn['hostname'] = 'localhost'; // voir hébergeur ou "localhost" en local
    			$pdo_conn['database'] = 'suivracc5'; // nom de la BdD
    			$pdo_conn['username'] = 'root'; // identifiant "root" en local
    			$pdo_conn['password'] = ''; // mot de passe (vide en local)
    			// ------------------------
    			// connexion à la Base de Données
    			try {
    			// chaine de connexion (DSN)
    			$pdo_conn['strConn'] = 'mysql:host='.$pdo_conn['hostname'].';dbname='.$pdo_conn['database'];
    			$pdo_conn['extraParam'] = array(
    			PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, // rapport d'erreurs sous forme d'exceptions
    			PDO::ATTR_PERSISTENT => true, // Connexions persistantes
    			PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8" // encodage UTF-8
    			);
    			// Instancie la connexion
    			$pdo = new PDO($pdo_conn['strConn'], $pdo_conn['username'], $pdo_conn['password'], $pdo_conn['extraParam']);
    			}
    			catch(PDOException $e){
    			$msg = 'ERREUR PDO dans ' . $e->getFile().' L.' . $e->getLine().' : ' . $e->getMessage();
    			die($msg);
    			}
     
    		$reponse = $bdd -> query('SELECT * FROM test') or die( print_r($bdd->errorinfo()));
     
    		while ($donnees = $reponse->fetch());
    			{
    			 ?>
    			 <p>
    				le numero d'enregistrement portant le <?php echo $donnees['id']; ?> contient l'information <?php echo $donnees['titre']; ?> <br />
    				le contenu est <?php echo $donnees['contenu']; ?> <br />
    			</p>
    		<?php
    			}
    		$reponse -> closeCursor();
     
    		?>
    		<section>
    			<article>
    				<table class="tableprincipal">
    					<caption> LISTE DES FICHIERS <?php echo "nom du fichier pour indiquer la liste"?> </caption>
    					<tr>
    						<th> OSR </th>
    						<th> COMMUNE </th>
    						<th> NOM CLIENT </th>
    					</tr>						
    				</table>
    			</article>
    			<aside>
    					<table class="tablemenu">
    						<caption> ETAT DU PORTEFEUILLE</caption>
    						<tr>
    							<th> LISTE </th>
    							<th> NOMBRE</th>
    						<tr>
    							<td> <a href=#> ETUDE EN COURS </a>
    							<td>  nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#> ATTENTE PAIEMENT </a> </td>
    							<td>  nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#> COMMANDE TRAVAUX </a></td>
    							<td>  nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#> PROGRAMMEE </a></td>
    							<td>  nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#> TERMINE AVEC ECART OU SUIVI</a></td>
    							<td> nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#>PAIEMENT SUPERIEUR A 3 MOIS </a></td>
    							<td> nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#> PAIEMENT SUPERIEUR A 6 MOIS </a></td>
    							<td>  nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#> REALISEE </a></td>
    							<td>  nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#> ABANDON CLIENT </a></td>
    							<td> nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#> ENVOIE EXTENSION </a></td>
    							<td> nombre de php  </td>
    						</tr>
    						<tr>
    							<td> <a href=#> ENVOIE COLLECTIF </a></td>
    							<td> nombre de php  </td>
    						</tr>
    					</TABLE>
    					<nav>
    						<ul>
    							<li> <a href=# >VOIR / MODIFIER LE DOSSIER  </a> </li> <br>
    							<li> <a href=# >CREER UN DOSSIER  </a> </li><br>
    							<li> <a href=# >RECHERCHER UN DOSSIER  </a> </li>
    						</UL>
    					</nav>
    					<form>
    						<input type="text" name="rech" id="rech"/>
    						<input type="submit" value="RECHERCHER"/>
    					</form>
    			</aside>
    		</section>
    		<?php include ("PIEDPAGE.PHP");?>
    	</div>
    	</body>
    </html>
    Maintenant j'ai ce message d'erreur :
    ( ! ) Notice: Undefined variable: bdd in C:\wamp\www\gestion portefeuille html\menup.php on line 57
    Call Stack
    # Time Memory Function Location
    1 0.0009 143584 {main}( ) ..\menup.php:0

    ( ! ) Fatal error: Call to a member function query() on a non-object in C:\wamp\www\gestion portefeuille html\menup.php on line 57
    Call Stack
    # Time Memory Function Location
    1 0.0009 143584 {main}( ) ..\menup.php:0
    Pour info les lignes 62 à 65 me servent uniquement de test pour tester et apprendre ma première connection à une base de donnée.
    Mais apparemment j'ai pas tout compris encore.
    Sur cette page proposée, à termes, je compte remplacer les textes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td>  nombre de php  </td>
    par une valeur récupérée suite à une requête sql sur la base de donnée.

    Je suis allé sur le site de wampserver et je suis en cours de téléchargement de la version 3.1.3 x64.
    Je la mettrais en place dès demain voir si cela peut aider.

    Je reste à votre écoute sur les modifications de la nouvelle page de code.

    Merci,

  6. #6
    Invité
    Invité(e)
    Par défaut
    Normal : moi, je l'ai appelé $pdo !!
    Pas $bdd...

    Adapte !

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

Discussions similaires

  1. [XL-2010] Connexion à une base de données ACCESS existante avec VBA et requête action
    Par marie_111 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/04/2019, 14h25
  2. Réponses: 0
    Dernier message: 10/02/2018, 01h00
  3. Oracle 10g connexion à la base de donnée avec EM
    Par rmaah dans le forum Connexions aux bases de données
    Réponses: 11
    Dernier message: 18/04/2006, 11h15
  4. [XSL]Connexion à une base de données avec XSL
    Par muad'dib dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 07/02/2006, 10h06
  5. Réponses: 1
    Dernier message: 25/09/2005, 16h18

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