Tableau SQL
MHH225
Messages postés
560
Statut
Membre
-
MHH225 Messages postés 560 Statut Membre -
MHH225 Messages postés 560 Statut Membre -
Salut !
Je galère sur un problème depuis tout à l'heure et j'ai rien trouvé ('fin bon j'ai un peu la tête dans le c**)
Alors voilà : j'ai deux tables SQL, l'une contenant des infos sur des pages et l'autre contenant le nom de certaines de ces pages... Et je voudrais comparer les deux tableaux.
En gros ça donne ça :
Premier tableau SQL : [2 champs : nom_page=>titre] index.php=>Accueil, admin.php=>Administration, gestion.php=>Gestion
Second tableau SQL : [1 champs : nom_page] index.php, admin.php
Code php
----------
$tableau1 = mysql_query("SELECT * FROM table1");
$tableau2 = mysql_query("SELECT * FROM table2");
while($donnees = mysql_fetch_array($tableau1))
{
//Et c'est la que je voudrais les comparer
if(in_array($donnees['nom_page'], $tableau2))
echo 'Il y a une correspondance entre tableau1 et tableau2.';
else
echo 'Il n'y a pas de correspondance';
}
---------
Le problème étant que là il me dit que le second argument de [in_array] ($tableau2) n'est pas valide, mais si je rajoute un mysql_fetch_array, il ne me prend que la première valeur (index.php). Mais je veux toutes les valeurs !!
Une idée ?
Je galère sur un problème depuis tout à l'heure et j'ai rien trouvé ('fin bon j'ai un peu la tête dans le c**)
Alors voilà : j'ai deux tables SQL, l'une contenant des infos sur des pages et l'autre contenant le nom de certaines de ces pages... Et je voudrais comparer les deux tableaux.
En gros ça donne ça :
Premier tableau SQL : [2 champs : nom_page=>titre] index.php=>Accueil, admin.php=>Administration, gestion.php=>Gestion
Second tableau SQL : [1 champs : nom_page] index.php, admin.php
Code php
----------
$tableau1 = mysql_query("SELECT * FROM table1");
$tableau2 = mysql_query("SELECT * FROM table2");
while($donnees = mysql_fetch_array($tableau1))
{
//Et c'est la que je voudrais les comparer
if(in_array($donnees['nom_page'], $tableau2))
echo 'Il y a une correspondance entre tableau1 et tableau2.';
else
echo 'Il n'y a pas de correspondance';
}
---------
Le problème étant que là il me dit que le second argument de [in_array] ($tableau2) n'est pas valide, mais si je rajoute un mysql_fetch_array, il ne me prend que la première valeur (index.php). Mais je veux toutes les valeurs !!
Une idée ?
A voir également:
- Tableau SQL
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Imprimer un tableau excel - Guide
- Tableau croisé dynamique - Guide
2 réponses
Eurêka !
J'ai fait une fonction (je compare plusieurs fois la même liste à des variables différentes) qui donne ça :
---------------
function modification($chaine)
{
$tableAComparer = mysql_query("SELECT * FROM table_a_comparer");
$chaineAComparer = '';
while($donnees = mysql_fetch_array($tableAComparer))
$chaineSansModification .= $donnees['critere'] . '-';
$tableAComparer = explode('-', $chaineAComparer);
if(!in_array($chaine, $tableAComparer))
$comparaison = TRUE;
else
$comparaison = FALSE;
return $modification;
}
------------------
Elle return TRUE si la variable est dans le tableau créé
Bon ici la partie qui nous interesse est celle en gras souligné, mais j'ai quand même mis le reste de la fonction...
J'ai fait une fonction (je compare plusieurs fois la même liste à des variables différentes) qui donne ça :
---------------
function modification($chaine)
{
$tableAComparer = mysql_query("SELECT * FROM table_a_comparer");
$chaineAComparer = '';
while($donnees = mysql_fetch_array($tableAComparer))
$chaineSansModification .= $donnees['critere'] . '-';
$tableAComparer = explode('-', $chaineAComparer);
if(!in_array($chaine, $tableAComparer))
$comparaison = TRUE;
else
$comparaison = FALSE;
return $modification;
}
------------------
Elle return TRUE si la variable est dans le tableau créé
Bon ici la partie qui nous interesse est celle en gras souligné, mais j'ai quand même mis le reste de la fonction...