JeuWeb - Crée ton jeu par navigateur
[Résolu] Declancher un code si un select est vide - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Résolu] Declancher un code si un select est vide (/showthread.php?tid=2620)

Pages : 1 2


[Résolu] Declancher un code si un select est vide - fenix - 31-05-2008

Bonjour a tous

voila je voudrait faire en sorte que mon code affiche une liste de personne et si celle si est vide un autre text mais je galere Sad en plus comme vous l'avez vue mon titre est pas tres clair et ça facilite pas les recherches sur Google.


mon code est le suivant

Code PHP :
<?php 
function attaquant(){//affichage des défenseurs du clan

global $userrow, $numqueries;
$query = sprintf("SELECT * FROM {{table}} WHERE longitude = %d AND latitude = %d;", $userrow['longitude'], $userrow['latitude']);
$recherche = doquery($query, "clans");
$base = mysql_fetch_array($recherche);

$arenaquery = doquery("SELECT*FROM {{table}} WHERE engarde='1' AND kambai='".$base['omanik']."' ", "users");


while (
$arenarow = mysql_fetch_array($arenaquery)) {
if(
$arenarow == ""){
$page.="Vous avez pris le controle de la base.
Voici les gain pour votre clan : EN DEVELOPPEMENT"
;

}else{
if (
$arenarow["engarde"]==1){
if (
$arenarow["currenthp"] <= 0){
$page.="<img src=\"images/avatar/num-".$arenarow["avatar"].".gif\"/>".$arenarow["charname"]." niveau : ".$arenarow["level"]."vie : ".$arenarow["currenthp"]."<br>";
}elseif (
$arenarow["charname"]!=$userrow["charname"]){
$page.="<img src=\"images/avatar/num-".$arenarow["avatar"].".gif\"/> <a href=\"index.php?do=combat2:".$arenarow["id"]."\">".$arenarow["charname"]."</a> niveau : ".$arenarow["level"]."vie : ".$arenarow["currenthp"]."<br>";
}elseif (
$arenarow["charname"]==$userrow["charname"]){
$page.="<img src=\"images/avatar/num-".$arenarow["avatar"].".gif\"/>".$arenarow["charname"]." niveau : ".$arenarow["level"]."vie : ".$arenarow["currenthp"]."<br>";
}
}
}
}

$page= rtrim($page, ", ");



$updatequery = doquery("UPDATE {{table}} SET attaque='1' WHERE id='".$base["id"]."'", "users");



$page .= "<br><br><br><br><br>Si vous avez changé d'avis, vous pouvez également <a href=\"index.php?do=quite2\">retourner à la ville </a><br>(important vous devez passer par ici pour ne plus compter parmit les combatant).\n";

$title = "arene";
display($page,$title);

}


Voila il doit y avoir une solution simple
j'avias penser a une table temporaire avec les attaquant mais je prefere ne pas en creer de nouvelle je me pert deja parmit celle qui existe.

cordialement


RE: Declancher un code si un select est vide - Anthor - 31-05-2008

mysql_num_rows ?


RE: Declancher un code si un select est vide - fenix - 31-05-2008

l'imbécile j'y avait même pas penser lol j'essaie avec pour voir
comme quoi les réflexes sont pas encore la
Merci


RE: Declancher un code si un select est vide - Ren Nelos - 31-05-2008

De toute façon, ton code n'est pas cohérent :
Code PHP :
<?php 
while ($arenarow = mysql_fetch_array($arenaquery)) {
if(
$arenarow == ""){
Si ta ligne est vide, tu ne vérifieras même pas la condition de la boucle du while Smile

Cordialement,


RE: Declancher un code si un select est vide - fenix - 31-05-2008

oki merci ça marche en faisant ainsi

Code PHP :
<?php 
function defenseur(){//afichage des joueurs present dans l'arene

global $userrow, $numqueries;
$query = sprintf("SELECT * FROM {{table}} WHERE longitude = %d AND latitude = %d;", $userrow['longitude'], $userrow['latitude']);
$recherche = doquery($query, "clans");
$base = mysql_fetch_array($recherche);
$arenaquery = doquery("SELECT*FROM {{table}} WHERE engarde='2' AND war='".$base['omanik']."' ", "users");
$arenarow2 = mysql_num_rows($arenaquery);
if(
$arenarow2 == 0){
$page.="Tous les ennemis sont vaincus ou en fuite!!!!";
}else{
while (
$arenarow = mysql_fetch_array($arenaquery)) {

if (
$arenarow["engarde"]==2){
if (
$arenarow["currenthp"] <= 0){
$page.="<img src=\"images/avatar/num-".$arenarow["avatar"].".gif\"/>".$arenarow["charname"]." niveau : ".$arenarow["level"]."vie : ".$arenarow["currenthp"]."<br>";
}elseif (
$arenarow["charname"]!=$userrow["charname"]){
$page.="<img src=\"images/avatar/num-".$arenarow["avatar"].".gif\"/> <a href=\"index.php?do=combat2:".$arenarow["id"]."\">".$arenarow["charname"]."</a> niveau : ".$arenarow["level"]."vie : ".$arenarow["currenthp"]."<br>";
}elseif (
$arenarow["charname"]==$userrow["charname"]){
$page.="<img src=\"images/avatar/num-".$arenarow["avatar"].".gif\"/>".$arenarow["charname"]." niveau : ".$arenarow["level"]."vie : ".$arenarow["currenthp"]."<br>";
}
}
}
}




$page= rtrim($page, ", ");



$updatequery = doquery("UPDATE {{table}} SET engarde='1' WHERE id='".$base["id"]."'", "users");



$page .= "<br><br><br><br><br>Si vous avez changé d'avis, vous pouvez également <a href=\"index.php?do=quite2\">retourner à la ville </a><br>(important vous devez passer par ici pour ne plus compter parmit les combatant).\n";

$title = "arene";
display($page,$title);

}



RE: [Regler]Declancher un code si un select est vide - Ren Nelos - 31-05-2008

Par contre, niveau propreté du code, commentaire,... Ca laisse un peu à désirer :o)

Cordialement,


RE: [Regler]Declancher un code si un select est vide - fenix - 31-05-2008

c'est un code brouillon (en plus je débute en php) et je vais lui rajoute des tableau et autre apres mais d'abord il faut k'il marche (enfin c'est mon point de vue)


RE: [Regler]Declancher un code si un select est vide - Ren Nelos - 31-05-2008

Ouki. Si tu le dis, j'attends de voir alors Wink

Cordialement,


RE: [Regler]Declancher un code si un select est vide - fenix - 31-05-2008

oki j'edite ce poste des que j'ai finit ^^


RE: [Regler]Declancher un code si un select est vide - fenix - 31-05-2008

voila (bon pas de tableau sa foire la mise en page)

et puis pour l'optimisation je verai plus tard ce code ne sera pas desuite en service j'ai juste note les partie a modifier :

Code PHP :
<?php 
function defenseur(){//afichage des joueurs present dans l'arene

global $userrow;


$query = sprintf("SELECT * FROM {{table}} WHERE longitude = %d AND latitude = %d;", $userrow['longitude'], $userrow['latitude']);
$recherche = doquery($query, "clans");
$base = mysql_fetch_array($recherche); // on recupere les donnes sur la base attaquée
$arenaquery = doquery("SELECT*FROM {{table}} WHERE engarde='2' AND war='".$base['omanik']."' ", "users");
$arenarow2 = mysql_num_rows($arenaquery);// on recupere le nombre d'attaquant
$newsgils= $userrow['gils'] + 1000;// gain en cas de victoir des defenseurs
if($arenarow2 == 0){// si plus d'attaquant :
$page.="Tous les ennemis sont vaincus ou en fuite!!!!<br>
Votre clan est fier de vous (vous gagnez 1000Gils)."
;
$updatequery = doquery("UPDATE {{table}} SET gils='$newsgils' WHERE id='".$userrow["id"]."'", "users");

}else{
while (
$arenarow = mysql_fetch_array($arenaquery)) {// si il reste des attaquant afficher leurs liste
if ($arenarow["engarde"]==2){
if (
$arenarow["currenthp"] <= 0){// partie a risque peut servir a bloquer une base
$page.="<img src=\"images/avatar/num-".$arenarow["avatar"].".gif\"/>".$arenarow["charname"]." niveau : ".$arenarow["level"]."vie : ".$arenarow["currenthp"]."<br>";
}elseif (
$arenarow["charname"]!=$userrow["charname"]){// simple verification
$page.="<img src=\"images/avatar/num-".$arenarow["avatar"].".gif\"/> <a href=\"index.php?do=combat2:".$arenarow["id"]."\">".$arenarow["charname"]."</a> niveau : ".$arenarow["level"]."vie : ".$arenarow["currenthp"]."<br>";
}elseif (
$arenarow["charname"]==$userrow["charname"]){// code sans tableau (foire la mise en page)
$page.="<img src=\"images/avatar/num-".$arenarow["avatar"].".gif\"/>".$arenarow["charname"]." niveau : ".$arenarow["level"]."vie : ".$arenarow["currenthp"]."<br>";
}
}
}
}




$page= rtrim($page, ", ");



$updatequery = doquery("UPDATE {{table}} SET engarde='1' WHERE id='".$base["id"]."'", "users");// considere le joueur comme defensuer



$page .= "<br><br><br><br><br>Si vous avez changé d'avis, vous pouvez également <a href=\"index.php?do=quite2\">retourner à la ville </a><br>(important vous devez passer par ici pour ne plus compter parmit les combatant).\n";

$title = "arene";
display($page,$title);

}