Petit souci de rand()

Résolu/Fermé
Lucryio Messages postés 204 Date d'inscription samedi 4 janvier 2014 Statut Membre Dernière intervention 4 juin 2017 - 14 mars 2017 à 00:07
Lucryio Messages postés 204 Date d'inscription samedi 4 janvier 2014 Statut Membre Dernière intervention 4 juin 2017 - 14 mars 2017 à 00:20
Bonsoir,

Je viens vers vous car, je cale sur un truc, qui je suis sure, qui est tout con mais je bute et je ne trouve pas l'erreur, voici mon code :

$gain_objet = rand(1,10000);
			 echo $gain_objet;
			 if (($gain_objet < 1) && ($gain_objet > 2500)) 
			 {
				//gain pokeball
				$gain_objet2 = 'PokeBall';
				$id_objet1 = '1';
				$insert_pb = $bdd->exec("INSERT INTO membres_objets VALUES ('','".$ID."','".$id_objet1."')");
				 $update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet1."'WHERE id_membre='".$ID."'");
				 echo 'Votre pokadechi vous à rapporte une Poke Ball de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				 $update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 elseif (($gain_objet < 2501) && ($gain_objet > 3500)) 
			 {
				//gain super ball
				$gain_objet2 = 'SuperBall';
				$id_objet2 = '2';
				$insert_pb = $bdd->exec("INSERT INTO membres_objets VALUES ('','".$ID."','".$id_objet2."')");
				 $update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet2."'WHERE id_membre='".$ID."'");
				 echo 'Votre pokadechi vous à rapporte une Super Ball de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				 $update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 elseif (($gain_objet < 3501) && ($gain_objet > 5000)) 
			 {
				//gain hyper ball
				$gain_objet2 = 'HyperBall';
				$id_objet3 = '3';
				$insert_pb = $bdd->exec("INSERT INTO membres_objets VALUES ('','".$ID."','".$id_objet3."')");
				 $update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet3."'WHERE id_membre='".$ID."'");
				 echo 'Votre pokadechi vous à rapporte Une Hyper Ball de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				 $update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 elseif (($gain_objet < 5001) && ($gain_objet > 5500)) 
			 {
				//gain master ball
				$gain_objet2 = 'MasterBall';
				$id_objet4 = '4';
				$insert_pb = $bdd->exec("INSERT INTO membres_objets VALUES ('','".$ID."','".$id_objet4."')");
				 $update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet4."'WHERE id_membre='".$ID."'");
				 echo 'Votre pokadechi vous à rapporte une Master Ball de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				 $update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 elseif (($gain_objet < 5501) && ($gain_objet > 6000)) 
			 {
				//gain super bonbon
				$gain_objet2 = 'Super Bonbon';
				$id_objet5 = '12';
				$insert_pb = $bdd->exec("INSERT INTO membres_objets VALUES ('','".$ID."','".$id_objet5."')");
				 $update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet5."'WHERE id_membre='".$ID."'");
				 echo 'Votre pokadechi vous à rapporte Un Super Bonbon de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				 $update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 elseif (($gain_objet < 6001) && ($gain_objet > 8000)) 
			 {
				//gain potion
				$gain_objet2 = 'Potion';
				$id_objet6 = '35';
				 $insert_pb = $bdd->exec("INSERT INTO membres_objets VALUES ('','".$ID."','".$id_objet6."')");
				 $update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet6."'WHERE id_membre='".$ID."'");
				 echo 'Votre pokadechi vous à rapporte une Potion de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				 $update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 elseif (($gain_objet < 8001) && ($gain_objet > 8900)) 
			 {
				//gain 5000P$
				$gain_objet2 = '5000P$';
				$id_objet7 = '5000';
				$insert_pb = $bdd->exec("UPDATE membres SET PS = PS + '5000' WHERE id ='".$ID."'");
				 $update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet7."'WHERE id_membre='".$ID."'");
				 echo 'Votre pokadechi vous à rapporte 5000 P$ de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				 $update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 elseif (($gain_objet < 8901) && ($gain_objet > 9500)) 
			 {
				//gain 10Sun
				$gain_objet2 = '10Sun';
				$id_objet8 = '10';
				 $insert_pb = $bdd->exec("UPDATE membres SET Psun = Psun + '10' WHERE id ='".$ID."'");
				 $update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet8."'WHERE id_membre='".$ID."'");
				 echo 'Votre pokadechi vous à rapporte 10 Sun de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				 $update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 elseif (($gain_objet < 9501) && ($gain_objet > 9800)) 
			 {
				//gain alakazamite
				$gain_objet2 = 'Alakazamite';
				$id_objet9 = '1111';
				 $insert_pb = $bdd->exec("INSERT INTO membres_objets VALUES ('','".$ID."','".$id_objet9."')");
				 $update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet9."'WHERE id_membre='".$ID."'");
				 echo 'Votre pokadechi vous à rapporte une Alakazamite de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				 $update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 elseif (($gain_objet < 9801) && ($gain_objet > 10000)) 
			 {
				//gain nanmeouie (531)
				$gain_objet2 = 'Nanméouie';
				$id_objet10 = '531';
				$sexe = rand(1,2);
				$chance_shin = 8192;
				if(rand(1,$chance_shin) == 1) 
				{
				$shiney = "shiney";				 
				}
				else
				{
				$Shiney = "";
				}
				$niveau = 5;
				$pv = ($niveau * 4);
				$pv_max = ($niveau * 4);
				$exp_max = ($niveau * 1000);
				$insert_pok = $bdd->prepare("INSERT INTO transfertspokemon VALUES('', :ID, :pok, :niveau, :pv, :pv_max, '0', :exp_max,:sexe, '0', :Shiney, '', :time, 'Pokadechi', '7', '0', '', '', '', '1')");
				$insert_pok -> bindvalue(':ID', $ID);
				$insert_pok -> bindvalue(':pok', $objet);
				$insert_pok -> bindvalue(':niveau', $niveau);
				$insert_pok -> bindvalue(':pv', $pv);
				$insert_pok -> bindvalue(':pv_max', $pv_max);
				$insert_pok -> bindvalue(':exp_max', $exp_max);
				$insert_pok -> bindvalue(':sexe', $sexe);
				$insert_pok -> bindvalue(':Shiney', $Shiney);
				$insert_pok -> bindvalue(':time', $time);
				$insert_pok -> execute(); 			 
				$update_vadrouille = $bdd->exec("UPDATE vadrouille SET revenu='1',  id_objet = '".$id_objet10."', revenu='1' WHERE id_membre='".$ID."'");
				echo 'Votre pokadechi vous à rapporte un ami (Nanmeouie) de sa vadrouille, ceci à été ajouté à votre compte jeu.';
				$update_pokadechi = $bdd->exec("UPDATE pokadechi_membre SET vadrouille = '0' WHERE id_membre='".$ID."'");
			 }
			 else
			 {}


En faite, mon souci c'est que mon and est bien défini mais j'ai l'impression qu'il ne suis pas dans les if/elseif

Si vous voyez quelque chose n'hésitez pas, ça fait bien 4h que je cherche.

Merci par avance.

1 réponse

jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651
14 mars 2017 à 00:15
Bonjour,

Pour commencer ... fais donc des ECHO de tes variables pour savoir ce qu'elles valent...

ENsuite.. comment peux tu avoir, par exemple un variable à la fois inférieur à 5001 ET supérieur à 5500 ?? (je suis sûr que d'autres betises de ce genre sont présentes dans ton code.... EDIT : Oui.. TOUS TES IF sont comme ça !! )
($gain_objet < 5001) && ($gain_objet > 5500)



1
Lucryio Messages postés 204 Date d'inscription samedi 4 janvier 2014 Statut Membre Dernière intervention 4 juin 2017
14 mars 2017 à 00:20
Pfff n'importe quoi moi, je suis bête, évidemment, j'ai inversé les symboles d'egalité.

J'ai honte d'avoir fait ce genre d'erreur mais bon c'est ainsi.

En tous cas, merci beaucoup à toi jordan pour ton aide ;)
Problème résolu.
0