Connexion BDD en php

Résolu
nonodu003 Messages postés 61 Statut Membre -  
sdt37 Messages postés 39 Statut Membre -
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

gardiendelanuit Messages postés 1854 Statut Membre 264
 
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.
0
nonodu003 Messages postés 61 Statut Membre 1
 
Ok et comment je pourrais voir les identifiants et régler les mots de passe à la BDD?
0
gardiendelanuit Messages postés 1854 Statut Membre 264
 
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.
0
nonodu003 Messages postés 61 Statut Membre 1
 
J'ai essayé de me connecter avec PDO plutot que mysql_connect et cette fois je peux me connecter.
Merci
0
nonodu003 Messages postés 61 Statut Membre 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/
0
gardiendelanuit Messages postés 1854 Statut Membre 264
 
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
0
nonodu003 Messages postés 61 Statut Membre 1
 
ok merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Azraka Messages postés 265 Statut Membre 13
 
//Connexion à une base de donnée
if($bd = mysql_connect("localhost","","")
{

Il manque une parenthèse pour fermer le if, non ?
0
nonodu003 Messages postés 61 Statut Membre 1
 
oui merci
0
sdt37 Messages postés 39 Statut Membre 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();
0