Mysql et mysqli

Nanashi17 Messages postés 193 Date d'inscription   Statut Membre Dernière intervention   -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je suis en train de refaire une application php pour la moderniser et l'intégrer dans un site wordpress. J'aimerai une confirmation que je ne fais pas n'importe quoi avec mon code.

Voici mon code d'origine:
 $db_link=mysql_connect('ftp_adresse','user','mot_de_passe');
		if($db_link)
		{
			if(mysql_select_db("base"))
			{
                        }
                }


Et voici comment j'ai l'intention de la changer:
$db_link=mysqli_connect('ftp_adresse','user','mot_de_passe','base');
		if($db_link)
		{
			if(mysqli_select_db($db_link,"base"))
			{
                        }
                }


Je dois effectuer cette opération sur beaucoup de fonction de mes nombreuses pages PHP et j'aimerai ne pas me louper.

J'espère que vous pourrez m'aider s'il vous plaît. Merci d'avance.

2 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

En complément de la réponse de W0D3
pour faire la connexion en mysqli tu peux plus proprement faire comme ceci:
<?php
$db_link = mysqli_connect('ftp_adresse','user','mot_de_passe','base');

if (!$db_link) {
   // Si la connexion est ko.. affiche l'erreur et quitte le script.
    printf("Echec de la connexion : %s\n", mysqli_connect_error());
    exit();
}

// la suite de ton code (ici la connexion est ok)

//....




Sachant que pour optimiser ton code ... tu places le code de connexion à ta bdd dans un fichier à part ( que tu nommes, par exemple, cnxbdd.php )
puis dans tes différentes pages tu n'auras plus qu'à inclure ce fichier en utilisant, par exemple
 require_once "cnxbdd.php";


Cela t'évitera de devoir réécrire le code de connexion dans toutes tes pages (et donc de devoir y faire une modification dans tous tes fichiers pour peu que tu modifies une infos comme le nom de la bdd, le user, .....
)




Cordialement, 
Jordane                                                                 
1
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
NB: Lorsque tu as un doute sur une instruction (ou que tu as un message d'erreur... ce qui risque d'arriver si tu ne t'y connais pas vraiment....) .. il te suffit d'aller voir la documentation officielle : https://www.php.net/manual/fr/mysqli.construct.php
0
W0D3 Messages postés 49 Date d'inscription   Statut Membre Dernière intervention  
 
Même si cela paraît évident je préfère préciser que tu as un ";" en trop apres le mysqli_connect
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > W0D3 Messages postés 49 Date d'inscription   Statut Membre Dernière intervention  
 
Il n'y est plus :-)
en même temps ça n'aurait pas généré d'erreur... mais au moins c'est plus propre merci.
0
W0D3 Messages postés 49 Date d'inscription   Statut Membre Dernière intervention  
 
Ton if n'est pas utile.

Tu remarqueras que tu inclus déjà le nom de la base de données dans mysqli_connect.

Pour le reste je vais dire avec mes souvenirs que c'est juste j'ai plutôt l'habitude de PDO.
0