Aide php SELECT * FROM plusieurs database

Fermé
PL - 23 juil. 2012 à 07:46
 A.Nonymous - 23 juil. 2012 à 14:05
Bonjour,

J'ai plusieur base de donnée avec 1 table dans chacune d'elle.

J'aimerais faire en sorte de faire une requête SQL en les joignants les unes des autres. J'ai esseyer plusieurs facon et J'ai vraiment du mal !

Voila le code :

<?php



include 'connect_to_mysql.php';

if ($search == "") { echo '<div align="center"><h3>blabla</h3></div>'; } else {
// the table to search
$table = "upload";
// explode search words into an array
$arraySearch = explode(" ", $search);
// table fields to search
$arrayFields = array(0 => "titre", 1 => "titre");
$countSearch = count($arraySearch);
$a = 0;
$b = 0;
$query = "SELECT * FROM ".$table." WHERE (";
$countFields = count($arrayFields);
while ($a < $countFields)
{
while ($b < $countSearch)
{
$query = $query."$arrayFields[$a] LIKE '%$arraySearch[$b]%'";
$b++;
if ($b < $countSearch)
{
$query = $query." AND " ;
}
}
$b = 0;
$a++;
if ($a < $countFields)
{
$query = $query.") OR (";
}
}

$query = $query.")";
$query_result = mysql_query("". $query . " LIMIT 0, 20");

// print title
echo '<h3>Résultats de recherche</h3>'."\n\n";
if(mysql_num_rows($query_result) < 1)
{
echo '<p>Désoler, aucun article trouvé pour "'.$search.'"</p>';
}
else
{
echo '<p>Résultat de recherche pour "'.$search.'"</p>'."\n\n";
// output list of articles
while($row = mysql_fetch_assoc($query_result))
{
// output whatever you want here for each search result
echo 'blabla';
}
}
}

?>

Tout fonctionne très bien mais dans une seuil base de donnée, j'aimerais pouvoir faire la recherche dans tous mes bases de donner.

Merci de votre coup de main !

Pierre-luc.
A voir également:

1 réponse

S'il y a plusieurs bases de données, pourquoi aucun changement de base n'est visible dans le code fourni ?

Si je me fie uniquement au titre de la demande, je suggérerais de faire :
SELECT * FROM db1.upload
UNION ALL
SELECT * FROM db2.upload
UNION ALL
SELECT * FROM db3.upload

Ce qui ne fonctionnera que si les 3 tables ont la même structure (ou tout du moins le même nombre de champs)
0