Connexion BDD en php

Résolu/Fermé
Signaler
Messages postés
59
Date d'inscription
jeudi 11 avril 2013
Statut
Membre
Dernière intervention
13 mai 2013
-
Messages postés
32
Date d'inscription
dimanche 26 avril 2009
Statut
Membre
Dernière intervention
31 juillet 2015
-
Bonjour,

je souhaite crée une BDD afin de récupérer l'identifiant, le chemin des fichiers à télécharger, et les noms des fichiers à télécharger.

J'utilise MAMP sur un mac. J'ai crée la BDD que je nomme interfaceWeb et je crée une table Attente avec 3 colonnes pour chaque paramètre du dessus, à partir de phpMyAdmin.

Maintenant, je souhaite me connecté à cette BDD depuis une page php. C'est pourquoi, j'écris ceci:

<?php
	//Connexion à une base de donnée
	if($bd = mysql_connect("localhost","","")
	{	
		echo "Connexion Serveur reussi <br/>";
		if(mysql_select_db("interfaceWeb",$bd))
		{
			echo "Succes connexion a la BDD <br/>";
		}
		else
		{
			die("Echec de connexion a la base");
		}
	}
	else
	{
		die("Echec connexion au serveur de BD");
	}	
?>	


Mais lorsque je charge ma page php, on m'affiche ce message:
"Server error
The website encountered an error while retrieving http://localhost:8888/resForm03.php. It may be down for maintenance or configured incorrectly.
Here are some suggestions:
Reload this webpage later.
HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request."

Je n'arrive pas à me connecter à ma BDD et je sais pas pourquoi.

Quelqu'un peut m'aider s'il vous plait ! =)

Merci d'avance

6 réponses

Messages postés
1769
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
19 novembre 2016
259
Bonjour

mysql_connect("localhost","",""); 

Ca me parait bizarre qu'il n'y ai pas d'identifiant à ta BDD et un conseil met un mot de passe aussi.
De plus mysql_connect est obselète voir https://www.php.net/manual/fr/function.mysql-connect.php

Merci de mettre "Résolu" quand le problème est réglé!
La connaissance c'est comme la confiture: moins on en a et plus on l'étale.
Messages postés
59
Date d'inscription
jeudi 11 avril 2013
Statut
Membre
Dernière intervention
13 mai 2013
1
Ok et comment je pourrais voir les identifiants et régler les mots de passe à la BDD?
Messages postés
1769
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
19 novembre 2016
259
Normalement ce sont les même que lorsque tu te connect sous phpmyadmin.
Après tu peux créer d'autre compte avec des droits précis sur chaque base à partir de cette même interface ou en mode console.
Messages postés
59
Date d'inscription
jeudi 11 avril 2013
Statut
Membre
Dernière intervention
13 mai 2013
1
J'ai essayé de me connecter avec PDO plutot que mysql_connect et cette fois je peux me connecter.
Merci
Messages postés
59
Date d'inscription
jeudi 11 avril 2013
Statut
Membre
Dernière intervention
13 mai 2013
1
Est-ce que l'on peut mettre dans une colonne par exemple CheminFichier plusieurs variables pour un identifiant?

Par exemple,

Je voudrais que pour l'identifiant 1, il y a dans CheminFichier:
/DisqueDur/Users/DossierTemporaire/
/Users/Document/Programme/
/Users/Dowload/Temporaire2/
Messages postés
1769
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
19 novembre 2016
259
C'est pas propre du tout et c'est seulement pour des cas bien spéciaux, et encore.. Le mieux est de faire un table association.
Dans le pire des cas voir explode en php
Messages postés
59
Date d'inscription
jeudi 11 avril 2013
Statut
Membre
Dernière intervention
13 mai 2013
1
ok merci
Messages postés
252
Date d'inscription
mercredi 11 juin 2008
Statut
Membre
Dernière intervention
5 juin 2014
14
//Connexion à une base de donnée
if($bd = mysql_connect("localhost","","")
{

Il manque une parenthèse pour fermer le if, non ?
Messages postés
59
Date d'inscription
jeudi 11 avril 2013
Statut
Membre
Dernière intervention
13 mai 2013
1
oui merci
Messages postés
32
Date d'inscription
dimanche 26 avril 2009
Statut
Membre
Dernière intervention
31 juillet 2015
2
Je déteste faire une recherche sur Google et tomber sur un post de forum sans réponse dans la première page, donc voici :

Depuis la version 5 de php il faut utiliser la classe PDO.

Exemple :


$DB_HOST = 'localhost';
$DB_NAME = 'ma_bdd';
$DB_LOGIN = 'root';
$DB_PASSWORD = '';

try{
$pdo = new PDO( 'mysql:host='.$DB_HOST.';dbname='.$DB_NAME.'', $DB_LOGIN, $DB_PASSWORD, array( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ) );
} catch( Exception $e ){
die( 'Erreur : '.$e->getMessage() );
}


et utiliser ensuite l'objet $pdo pour faire vos requêtes.

Exemple pour retourner tous les enregistrements de 'ma_table' :


$query = "SELECT * FROM ma_table";
$result = $pdo->prepare($query);
$result->execute();
$result = $result->fetchAll();