Page qui charge en continue

Ce topic a été résolu
anthony30190

anthony30190 Le 5 avril 2017 à 21:07 (Édité le 25 janvier 2019 à 17:53)

Bonjour, j'ai ma page qui tourne en continue je c'est pourquoi mais je ne sais pas comment l'arreter voila mon code:
$bdd-> connection a ma bb;
$bdd->exec("SET NAMES utf8");

$i_result = rand(1,16);
      
      $reqrang = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
      $reqrang->execute(array($i_result));
      $rang_existe = $reqrang->rowCount();
      
     
      
      
      while($rang_existe == "1")
           {
            $i_result2 = rand(1,16);
            
      $reqrang = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
      $reqrang->execute(array($i_result2));
      $rang_existe = $reqrang->rowCount();
      
            
           }
      
     
     $req = $bdd->prepare('INSERT INTO tournois(rang) VALUES(:pseudo)');
       $req -> bindParam(':pseudo', $i_result2);
       $req -> execute();
      


?>

Balatharas

Balatharas Le 6 avril 2017 à 18:11

Bah deja dis nous ce que tu sais sur ton problème......
anthony30190

anthony30190 Le 6 avril 2017 à 18:38

Bin au bout de la 16zieme fois que je recharge la page la condition  
while($rang_existe == "1") 
est toujours vrai me fraudais un système pour fermer la boucle une fois que la table rang contient tout les chiffres de 1 a 16
Zbuu

Zbuu Le 7 avril 2017 à 00:01

Si j'ai bien compris tu souhaites affiché les 16 derniers tournois ? Pourquoi faire autant de requête ? 

Si je suis à coté de la plaque peux tu expliquer ce que tu souhaite faire avec ton code ? 


TheOldNoob

TheOldNoob Le 8 avril 2017 à 08:50

Salut,
Si tu fait : 
"SELECT * FROM tournois ORDER BY rang DESC LIMIT 16"
Tu a une requête qui va se limité a afficher les 16 premier
Après, tu fait un simple foreach pour afficher tes tournois.
anthony30190

anthony30190 Le 8 avril 2017 à 09:32

Non, ce que je cherche c'est quand on déclare un tournois sa sélectionne les joueurs et sa leur attribut un rang de 1 a 16 aleatoirement
TheOldNoob

TheOldNoob Le 8 avril 2017 à 09:49

alors tu fait ça :
"SELECT * FROM tournois ORDER BY rand()"
ce qui va leur donné un ordre aléatoire, mais ça changera a chaque rechargement de page :(
anthony30190

anthony30190 Le 8 avril 2017 à 10:02

Problème résolue pour ce qui voudrait faire comme moi:
$i_result = rand(1,16);
                  
                  
                  $reqrang = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang->execute(array($i_result));
                  $rang_existe = $reqrang->rowCount();
                  
                  if($rang_existe == "0"){
                     
                     $req = $bdd->prepare('INSERT INTO tournois(rang) VALUES(:pseudo)');
                     $req -> bindParam(':pseudo', $i_result);
                     $req -> execute();
                     
                  }else{
                  
                  
                  while($rang_existe == "1")
                                 {
                                    $i_result2 = rand(1,16);
                                    
                  $reqrang = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang->execute(array($i_result2));
                  $rang_existe = $reqrang->rowCount();
                  $a=1;
                  $b=2;
                  $c=3;
                  $d=4;
                  $e=5;
                  $f=6;
                  $g=7;
                  $h=8;
                  $i=9;
                  $j=10;
                  $k=11;
                  $l=12;
                  $m=13;
                  $n=14;
                  $o=15;
                  $p=16;
               
                  
                  $reqrang42 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang42->execute(array($a));
                  $rang_existe42 = $reqrang42->rowCount();
                  if($rang_existe42 == "1")
                  {
                     
                  $reqrang2 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang2->execute(array($b));
                  $rang_existe2 = $reqrang2->rowCount();
                  if($rang_existe2 == "1")
                  {
                  $reqrang3 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang3->execute(array($c));
                  $rang_existe3 = $reqrang3->rowCount();
                  if($rang_existe3 == "1")
                  {
                  $reqrang4 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang4->execute(array($d));
                  $rang_existe4 = $reqrang4->rowCount();
                  if($rang_existe4 == "1")
                  {
                  $reqrang5 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang5->execute(array($e));
                  $rang_existe5 = $reqrang5->rowCount();
                  if($rang_existe5 == "1")
                  {
                  $reqrang6 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang6->execute(array($f));
                  $rang_existe6 = $reqrang6->rowCount();
                  if($rang_existe6 == "1")
                  {
                  $reqrang7 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang7->execute(array($g));
                  $rang_existe7 = $reqrang7->rowCount();
                  if($rang_existe7 == "1")
                  {                  
                  $reqrang8 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang8->execute(array($h));
                  $rang_existe8 = $reqrang8->rowCount();
                  if($rang_existe8 == "1")
                  {                  
                  $reqrang9 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang9->execute(array($i));
                  $rang_existe9 = $reqrang9->rowCount();
                  if($rang_existe9 == "1")
                  {
                  $reqrang10 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang10->execute(array($j));
                  $rang_existe10 = $reqrang10->rowCount();
                  if($rang_existe10 == "1")
                  {
                  $reqrang11 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang11->execute(array($k));
                  $rang_existe11 = $reqrang11->rowCount();
                  if($rang_existe11 == "1")
                  {
                  $reqrang12 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang12->execute(array($l));
                  $rang_existe12 = $reqrang12->rowCount();
                  if($rang_existe12 == "1")
                  {
                  $reqrang13 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang13->execute(array($m));
                  $rang_existe13 = $reqrang13->rowCount();
                  if($rang_existe13 == "1")
                  {   
                  $reqrang14 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang14->execute(array($n));
                  $rang_existe14 = $reqrang14->rowCount();
                  if($rang_existe14 == "1")
                  {
                  $reqrang15 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang15->execute(array($o));
                  $rang_existe15 = $reqrang15->rowCount();
                  if($rang_existe15 == "1")
                  {
                  $reqrang16 = $bdd->prepare("SELECT * FROM tournois WHERE rang = ?");
                  $reqrang16->execute(array($p));
                  $rang_existe16 = $reqrang16->rowCount();
                  if($rang_existe16 == "1")
                  {
                     $condition= "stop";
                     break;
                     
                     
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                  }
                                    
                  }                  
                  
            
                  if($condition == "stop")
                  {
                     echo"toute les valeurs sont prise";
                  }else{
               
                     $req = $bdd->prepare('INSERT INTO tournois(rang) VALUES(:pseudo)');
                     $req -> bindParam(':pseudo', $i_result2);
                     $req -> execute();
                  }
                  }
                  
tutosfaciles48

tutosfaciles48 Le 8 avril 2017 à 22:09

bonjour, merci de mettre le sujet en résolu si il l'est
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte