Problème de doublon php, fonction in_array()
StidP3
Messages postés
3
Statut
Membre
-
jisisv Messages postés 3678 Statut Modérateur -
jisisv Messages postés 3678 Statut Modérateur -
Bonjour,
je souhaite créer un qcm, ici je veux effectuer et tirage aléatoire du nombre de questions ouvertes choisies par l'utilisateur ($questO) parmi le nombre total de questions ouvertes ($N), j'ai écrit le code suivant qui ne fonctionne pas car j'ai encore des doublons. Need help thanks
if($questO==0)
{ echo"<h1>Pas de questions ouvertes</h1>";
}
else
{ for($i=1;$i<=$questO;$i++)
{ do
{ $val=rand(1,$NO);
If(in_array($val,$tableauO)==true)
{ $rep=true;
}
else
{ $rep=false;
}
}
while($rep=false);
$tableauO[$i-1]=$val;
echo $tableauO[$i-1];
}
}
je souhaite créer un qcm, ici je veux effectuer et tirage aléatoire du nombre de questions ouvertes choisies par l'utilisateur ($questO) parmi le nombre total de questions ouvertes ($N), j'ai écrit le code suivant qui ne fonctionne pas car j'ai encore des doublons. Need help thanks
if($questO==0)
{ echo"<h1>Pas de questions ouvertes</h1>";
}
else
{ for($i=1;$i<=$questO;$i++)
{ do
{ $val=rand(1,$NO);
If(in_array($val,$tableauO)==true)
{ $rep=true;
}
else
{ $rep=false;
}
}
while($rep=false);
$tableauO[$i-1]=$val;
echo $tableauO[$i-1];
}
}
A voir également:
- Problème de doublon php, fonction in_array()
- Fonction si et - Guide
- Doublon photo - Guide
- Easy php - Télécharger - Divers Web & Internet
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
3 réponses
Bonjour
ton while($rep=false); est incorrect à deux titres :
il faut == pour comparer, et non pas simplement =
C'est si $rep==true qu'il faut reboucler, pas si $rep==false
ton while($rep=false); est incorrect à deux titres :
il faut == pour comparer, et non pas simplement =
C'est si $rep==true qu'il faut reboucler, pas si $rep==false
Je tu peux utiliser shuffle> et <ital>array_slice
Gates gave ^H sold you the windows.
GNU gave us the whole house.(Alexandrin)
johand@osiris: ~/src/php $ cat qcm.php
<?php
$nombre_de_questions = 10;
$selected = 4;
$all = range(1, $nombre_de_questions);
shuffle($all);
$qcm = array_slice( $all, 1 , $selected);
foreach ( $qcm as $cnt)
{
printf("Question %02d\n", $cnt);
}
?>
johand@osiris: ~/src/php $ php qcm.php
Question 02
Question 05
Question 09
Question 04
Gates gave ^H sold you the windows.
GNU gave us the whole house.(Alexandrin)