Tableau indéxé numériquement et doublon
pontarose
-
Reivax962 Messages postés 3742 Statut Membre -
Reivax962 Messages postés 3742 Statut Membre -
Bonjour,
Je remplis mon tableau indéxé numériquement à l'aide d'une boucle (via les données entrés dans un formulaire); J'obtiens ainsi une liste d'élement dans un tableau indéxé numériquement.
Comment faire pour repérer si j'ai des doublons dans cette liste?
Exemple: A1,B1,C1,A1
je compare tous les éléments de cette liste
si A1 est présent x fois
print A1 est un doublon
Voiçi mon script:
<?php
$tab=array();
for($i=1; $i<=$nb_proteine;$i++)
{
$sunite=$_POST['sunite'.$i]
$tab[]="$sunite";
}
?>
JE BLOQUE A CE NIVEAU
<?php
$nb=count($tab);
for($j=0; $j!=$nb;$j++)
{
if ($tab[$i]==$tab;
}
?>
Je remplis mon tableau indéxé numériquement à l'aide d'une boucle (via les données entrés dans un formulaire); J'obtiens ainsi une liste d'élement dans un tableau indéxé numériquement.
Comment faire pour repérer si j'ai des doublons dans cette liste?
Exemple: A1,B1,C1,A1
je compare tous les éléments de cette liste
si A1 est présent x fois
print A1 est un doublon
Voiçi mon script:
<?php
$tab=array();
for($i=1; $i<=$nb_proteine;$i++)
{
$sunite=$_POST['sunite'.$i]
$tab[]="$sunite";
}
?>
JE BLOQUE A CE NIVEAU
<?php
$nb=count($tab);
for($j=0; $j!=$nb;$j++)
{
if ($tab[$i]==$tab;
}
?>
Configuration: Windows XP Firefox 2.0.0.7
3 réponses
-
Bonjour,
Je te propose de tout faire en une seule fois : au moment d'ajouter un élément, tu ne le fais que s'il n'est pas déjà dans le tableau.
Ce qui donne :<?php $tab=array(); for($i=1; $i<=$nb_proteine;$i++) { $sunite=$_POST['sunite'.$i] if (!array_search($sunite, $tab)) $tab[]=$sunite; } ?>Xavier -
Bonjour,
Merci mais cela ne marche pas.
Si je tape A1 et A1
j'obtiens
Array (
[0]flècheA1
[0]flècheA1
)
<?php
$tab=array();
for($i=1; $i<=$nb_proteine;$i++)
{
$sunite=$_POST['sunite'.$i]
if (!array_search($sunite, $tab))
{
$tab[]=$sunite;
}
else
{
print("DOUBLON");
}
}
print("<pre>");
print_r("$tab");
print("</pre>");
?> -
Bon, alors essaie de remplacer
if (!array_search($sunite, $tab))
par
if (array_search($sunite, $tab) === False)