Matrice declaration, synthaxe ou logique ... ?

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 : Matrice declaration, synthaxe ou logique ... ?

Re: Matrice declaration, synthaxe ou logique ... ?

par Alien » 26 mars 2013, 04:08

innutile de chercher plus l'erreur vient des tables dans la db :'(
merci et désolé

Re: Matrice declaration, synthaxe ou logique ... ?

par moogli » 25 mars 2013, 23:09

il faut voir ce que contient row, et si la requete est correcte.


tous ceci est bien complexe, il y a surement moyen de simplifier la chose et de rendre le code plus clair.

@+

Re: Matrice declaration, synthaxe ou logique ... ?

par Alien » 25 mars 2013, 21:50

apres avoir ajouté un espion je peux dire ceci
le probleme provient de:

$tabobus[$i]["A"]=($row["name"]);
$tabobus[$i]["B"]=($row["world"]);
$tabobus[$i]["C"]=($row["owner"]);
$tabobus[$i]["D"]=($row["item"]);
$tabobus[$i]["E"]=($row["count"]);
$tabobus[$i]["F"]=($row["slot"]);

$row["name"] change a la lecture de la DB
mais pas les autres valeurs :'(
c'est donc un probleme de lecture
qq un aurait t'il une idee ?
ou deja rencontré ce genre de probleme ?

Matrice declaration, synthaxe ou logique ... ?

par Alien » 25 mars 2013, 19:18

Je debute en php, je ne pense pas que ce soit un probleme de logique, mais ca reste possible, il m'affiche correctement l'utilisateur et l'inventaire du premier joueur en ligne, mais tous le joueurs suivant on le meme inventaire que le premier, j'ai deja utilisé la technique du on efface tout et on recommence, mais j'ai tjrs le meme probleme a l'arrive
	mysql_connect($MySQL["host"], $MySQL["username"], $MySQL["password"]);
	mysql_select_db($MySQL["database"]);
	
	$query = "SELECT `invsql_users`.`name`, `invsql_inventories`.*\n"
    . "FROM invsql_users, online_players, invsql_inventories\n"
    . "WHERE ((`invsql_users`.`name` =`online_players`.`player`) AND (`online_players`.`online` =1))";
    $query2 = "SELECT `online_players`.`player`\n"
    . "FROM online_players\n"
    . "WHERE (`online_players`.`online` =1)";
	$Nbjr=array();
    $joueurs=array();
    $Result2 = mysql_query($query2);
	$i = 1;
    $Nbjr=0;
	$rows = mysql_num_rows($Result2);
	while( $row = mysql_fetch_array($Result2) ){
    $joueurs[$i]=$row["player"];
    $Nbjr=$i;
    printf("<br> %d %s",$Nbjr,$row["player"]);
    $i++;
}
if($Nbjr==0){
    printf("Aucun joueurs en ligne");
    }
    else
    {
    $tabobus=array(array());
    $tabinit=array(array());
    
    printf("<br><br>");
	$Result = mysql_query($query);
    $i = 0;
	$rows = mysql_num_rows($Result);
	while( $row = mysql_fetch_array($Result) )
    {   $tabobus[$i]["A"]=($row["name"]);
        $tabobus[$i]["B"]=($row["world"]);
        $tabobus[$i]["C"]=($row["owner"]);
        $tabobus[$i]["D"]=($row["item"]);
        $tabobus[$i]["E"]=($row["count"]);
        $tabobus[$i]["F"]=($row["slot"]);
        $i++;
    }
    printf("nombre d'entree: %d",$i);
    $nbre=$i;
    
    
    
    for($i=1;$i<$Nbjr+1;$i++)
    {   printf("<br><br>joueur%d %s <br>",$i,$joueurs[$i]);
        for($y=0;$y<36;$y++)
        {   for($z=0;$z<2;$z++)
            {   $tabinit[$y][$z]=0;
            }
        }
        for($x=0;$x<$nbre;$x++)
        {   if($joueurs[$i]==$tabobus[$x]["A"])
            {   if($tabobus[$x]["C"]==1)
                {   if($tabobus[$x]["B"]=="001")
                    {   $tabinit[$tabobus[$x]["F"]][0]=$tabobus[$x]["D"];
                        $tabinit[$tabobus[$x]["F"]][1]=$tabobus[$x]["E"];
                    }
                }
            }
        }
        for($y=0;$y<36;$y++)
        {   printf(" |%dx%d ",$tabinit[$y][0],$tabinit[$y][1]);
            if(($y+1)%9==0){printf("<br>");}
        }
    }