(PHP 4, PHP 5)
mysql_db_query — Sélectionne une base de données et y exécute une requête
Cette fonction était obsolète en PHP 5.3.0, et la totalité de l'extension original MySQL a été supprimée en PHP 7.0.0. À la place, vous pouvez utiliser soit l'extension MySQLi, soit l'extension PDO_MySQL. Voir aussi MySQL : choisir une API du guide, et ces entrées de la FAQ pour plus d'informations. Alternatives à cette fonction :
$database
, string $query
[, resource $link_identifier
= NULL
] )mysql_db_query() sélectionne une base de données et exécute une requête sur celle-ci.
database
Le nom de la base de données qui sera sélectionnée.
query
La requête MySQL.
Les données contenues dans la requête doivent être proprement échappées.
link_identifier
La connexion MySQL.
S'il n'est pas spécifié, la dernière connexion ouverte avec la fonction
mysql_connect() sera utilisée. Si une telle connexion
n'est pas trouvée, la fonction tentera d'ouvrir une connexion, comme si
la fonction mysql_connect() avait été appelée sans argument.
Si aucune connexion n'est trouvée ou établie, une alerte
E_WARNING
est générée.
Retourne une ressource de résultat positive MySQL à partir de la requête ou
FALSE
en cas d'erreur. Cette fonction retourne aussi TRUE
/FALSE
pour
les requêtes
INSERT/UPDATE/DELETE
pour indiquer une réussite ou un échec.
Version | Description |
---|---|
5.3.0 | Cette fonction lance maintenant une alerte de type E_DEPRECATED. |
Exemple #1 Exemple alternatif avec mysql_db_query()
<?php
if (!$link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) {
echo 'Connexion impossible à mysql';
exit;
}
if (!mysql_select_db('mysql_dbname', $link)) {
echo 'Sélection de base de données impossible';
exit;
}
$sql = 'SELECT foo FROM bar WHERE id = 42';
$result = mysql_query($sql, $link);
if (!$result) {
echo "Erreur DB, impossible d'effectuer une requête\n";
echo 'Erreur MySQL : ' . mysql_error();
exit;
}
while ($row = mysql_fetch_assoc($result)) {
echo $row['foo'];
}
mysql_free_result($result);
?>
Note:
Soyez avertis que cette fonction ne restaure pas la base de données qui était utilisée initialement. En d'autres termes, vous ne pouvez utiliser cette fonction pour exécuter temporairement une requête SQL dans une autre base de données, il vous faudra sélectionner manuellement la bonne base à nouveau. Il est fortement recommandé d'utiliser la syntaxe SQL database.table ou mysql_select_db() au lieu de cette fonction.