Bonjour à tous,
J'ai une table Mysql nommé "Valeur" qui ressemble à ceci:
ID_val--col1--col2--col3--col4--col5--col6
1--------6-----12----24---32---37----41
2--------1------3-----11---27---31---41
3--------3------6-----12---13---53---54
4--------1------7-----32---33---44---45
5--------6------8-----12---24---32---37
De cette table,je veux afficher les paires de chiffres identiques qui se retrouvent plus d'une fois dans cette derniière sans tenir compte des colonnes où elles se situent (ex: "6-12" se retrouve 3 fois dans la table tandis que "12-24" apparaît 2 fois). Mon problème est au niveau de l'affichage. En fait, rien ne s'affiche quand j'exécute ma requête que voici:
<?php
$db= new PDO('mysql:host=localhost;dbname=db_name', $userbdd, $passbdd);
$sth = $db->prepare('SELECT col1, col2, col3, col4, col5 , col6 FROM Valeur WHERE ligne1= ? AND ligne2= ? AND ligne3= ? AND ligne4= ? AND ligne5= ? AND ligne6= ?');
$sth->execute(array($_GET['ligne1'], $_GET['ligne2'], $_GET['ligne3'], $_GET['ligne4'],$_GET['ligne5'], $_GET['ligne6'],));
$result = $sth->fetchAll();
$lignes = array($result);
$result = array(); foreach($lignes as $ligne1)
{
for($i=0;$i<(count($ligne1)-1);$i++)
{ for($j=$i+1;$j<count($ligne1);$j++)
{
if(isset($result[$ligne1[$i].'-'.$ligne1[$j]]))
$result[$ligne1[$i].'-'.$ligne1[$j]]++;
else
$result[$ligne1[$i].'-'.$ligne1[$j]] = 1;
}
}
} $result = array_diff($result,array(1));
arsort($result); foreach($result as $key => $doublons)
{
echo '"' . $key . '" (' . $doublons . ')<br />'; }
?>
N'étant pas un familier du PDO pour l'instant, je galère ferme avec ce problème. Quelqu'un pourrait m'éclairer afin de résoudre mon problème.
Merci!