avec 2 table comparer oui / nion

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : avec 2 table comparer oui / nion

Re: avec 2 table comparer oui / nion

par jeorcal » 07 août 2010, 08:26

merci mais entre temps j'ai trouvé

Code : Tout sélectionner

$chaine = '1,4,5,6'; $tab = explode(',', $chaine); $result = array(); for($i=1; $i<=10; $i++) (in_array($i, $tab)) ? $result[$i] = 'oui' : $result[$i] = 'non';

Re: avec 2 table comparer oui / nion

par blof » 07 août 2010, 06:12

Bonjour,

tu peux aussi rassembler les 2 tableaux en 1 seul avec array_merge() et compter la fréquence des valeurs avec array_count_values()
( "1" => c'est dans un seul tableau, "2" => c'est dans les deux )
<?php

$a = array(1,2,3,4,5,6,7,8);
$b = array(2,5,6,8);

$c = array_count_values(array_merge($a, $b));

//echo "<pre>\n"; print_r($c); echo "</pre>\n\n";

$ok[1] = 'non';
$ok[2] = 'oui';

foreach($c as $cle => $frequence)
{
	echo "$cle $ok[$frequence]<br>\n";
}

?>

Re: avec 2 table comparer oui / nion

par jeorcal » 04 août 2010, 13:58

je vais essayer ta méthode

j'ai essayé plus simple

$checktrueList = '1,5,6,8';
for ($i = 1; $i <= 10; $i++) {
$pos = false;
$nb = (string)$i;
$pos = strpos($checktrueList, $nb);
if ($pos === true) {
$checkboxList .= 'true';
}
else {
$checkboxList .= 'false';
}
}


ça ne marche pas du tout , c'est toujours à false


merci

Re: avec 2 table comparer oui / nion

par xTG » 04 août 2010, 13:55

Tu peux faire cela en deux boucles en effet.
Un peu d'algo et on obtient ceci :

Code : Tout sélectionner

var tab1 = {1,2,3,4,5} var tab2 = {2,4,5} var res = {} Pour i allant de 0 à taille(tab1) res[i] = faux Pour j allant de 0 à taille(tab2) Si tab1[i] = tab2[j] alors res[i] = vrai FinSi FinPour FinPour

Re: avec 2 table comparer oui / nion

par jeorcal » 04 août 2010, 13:21

mais dans une boucle c'est pas possible ? je veux affecter des valeur true et false dans une boucle


for ($i = 1; $i <= 10; $i++) {
if ( $i == $i_autreArray)
{... true}
else{.... false}
}

Re: avec 2 table comparer oui / nion

par xTG » 04 août 2010, 13:01

Tu peux faire une combinaison avec les fonctions array_intersect() et array_diff().
En combinant les résultats tu as ce qui n'a pas été trouvé et ce qui a été trouvé.

avec 2 table comparer oui / nion

par jeorcal » 04 août 2010, 12:45

bonjour

j'ai par exemple 2 array
1,2,3,4,5,6,7,8
et
2,5,6,8

je veux les comparer et avoir pour résultat
1 non
2 oui
3 non
4 non
5 oui
6 oui
7 non
8 oui

oui si je retrouve dans les 2 tableaux et non en valeur par defaut si je trouve pas

quelle est la meilleure méthode sachant qu'il n'y aura que 10 éléments maxi ?

merci