Warning: mysql_select_db(): supplied argument is not a valid ...

Résolu
chaima.abdouli Messages postés 121 Statut Membre -  
ElementW Messages postés 5690 Statut Contributeur -
Bonjour,

En essayant de tester ma page un message s'affiche :

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /home/vintagem/www/batch/stock.php on line 11
Erreur de connexion à la BDD

Voici mon code



$servername='bla bla'; 
$database_username='bla bla'; 
$database_password='bla bla';
$database_name='bla bla'; 

$link = mysqli_connect($servername,$database_username,$database_password) or die("Erreur de connexion au serveur"); //mysql_connect
mysqli_select_db($link, $database_name) or die("Erreur de connexion à la BDD"); //old: mysql_select_db








1 réponse

  1. ElementW Messages postés 5690 Statut Contributeur 1 293
     
    'lut, je vois que ton code était codé avec l'extension MySQL, bonne initiative de faire le changement! Toutefois, en plus d'être mauvaise, cette extension a induit des mauvaises pratiques: ici le
    or die
    pour la gestion d'erreur.
    Outre les problèmes de sécurité et de mauvais code, il se trouve que
    mysqli_connect
    ne renvoie pas quelque chose évaluant à
    false
    quand la connexion a échouée, donc le or die n'est jamais déclenché.
    Avec mysqli, on se sert de
    mysqli_connect_errno()
    pour avoir le statut de la connexion. Cette fonction ne prend pas le
    $link
    en paramètre. 0 = pas d'erreur évaluera à
    false
    . Tout autre statut évaluera à
    true
    . Sers-toi de ça pour faire ta gestion d'erreur avec un
    if
    .

    Toutefois je te recommande fortement d'utiliser l'API orienté objet de MySQLi, elle est plus concise que le style procédural.
    0