bonjour à tous
je suis en train de patiner bêtement sur un echo array,

Je sais trés bien que l'on ne pas faire

echo $tab;

mais qu'il faut faire

var_dump($tab);

le truc que je souhaite faire c'est récupérer et afficher la dixièmes valeur indexé

$resutltab=$tab[10];
echo $resutltab;

mais je dois très mal m'y prendre car il me répond array à chaque fois

comment dois m'y prendre?

$sql = "SELECT pilotid FROM tracker_pireps where `accepted`=1 ORDER BY `pilotid` ASC ";
$idpilote=0;
$compt=0;
try{
        $DBPDO = new PDO($dbdns2,$dbuser2 , $dbpass2,
                        array( PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
        $DBPDO-> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        try{
                $req = $DBPDO ->query($sql);
                while($d=$req->fetch(PDO::FETCH_OBJ)) 
                    {   
                        if ($idpilote!=$d->pilotid)
                            {   
                                $tab]=array($d->pilotid);
                                $idpilote=$d->pilotid;

                            }
                    }
                    $result = count($tab);
                    $requete = $DBPDO->prepare("SELECT COUNT( pirepid ) FROM tracker_pireps WHERE pilotid =41 AND accepted =1");
                    $requete->execute(array($vol));
                    $nbvol=$requete->fetchColumn();
            var_dump($tab);
            echo '</br>';

                    while ($compt<$result)
                        {
                            $pilotid=$tab$compt];
                            $compt=$compt+1;
                            $requete = $DBPDO->prepare("SELECT COUNT( pirepid ) FROM tracker_pireps WHERE pilotid =$pilotid AND accepted =1");
                            $requete->execute(array($vol));
                            $nbvol=$requete->fetchColumn();

                            echo $compt;
                            echo" ";
                            echo $nbvol;
                            echo '</br>';
                        }

            }
        catch (PDOException $e) 
            {
                echo '<h6>OUPS:</h6>';
                echo '</br>';
                echo '<h5>L\'instruction pour la Base de Donnée n\'a pas été comprise correctement</h5>';
                echo '</br>';
                echo '</br>';
                echo '<h5>Module mis en someil</h5>';
            }
    }
catch (PDOException $e)
    {
        echo '<h6>OUPS:</h6>';
        echo '</br>';
        echo '<h5>Une base de donnée n\'est pas de bonne humeur pour le moment.</h5>';
        echo '</br>';
        echo '<h5>Veuillez réssayer plus tard</h5>';
        echo '</br>';
        echo '</br>';
        echo '<h5>Module mis en someil</h5>';
    }
?>

merci d'avance

Flo

1 réponse


flo3376
Auteur
Réponse acceptée

j'ai trouvé,

le problème n'était pas à la lecture du tableaux, mais à l'écriture, je reviens et je vais me tirer une balle dans le pied

$sql = "SELECT pilotid FROM tracker_pireps where `accepted`=1 ORDER BY `pilotid` ASC ";
$idpilote=0;
$compt=0;
try{
        $DBPDO = new PDO($dbdns2,$dbuser2 , $dbpass2,
                        array( PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
        $DBPDO-> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        try{
                $req = $DBPDO ->query($sql);
                while($d=$req->fetch(PDO::FETCH_OBJ)) 
                    {   
                        if ($idpilote!=$d->pilotid)
                            {   

                                $tab$compt]=$d->pilotid;
                                $idpilote=$d->pilotid;
                                $compt=$compt+1;

                            }
                    }
                    $result = count($tab);
                    $requete = $DBPDO->prepare("SELECT COUNT( pirepid ) FROM tracker_pireps WHERE pilotid =41 AND accepted =1");
                    $requete->execute(array($vol));
                    $nbvol=$requete->fetchColumn();
            var_dump($tab);
            echo '</br>';
                    $compt=0;
                    while ($compt<$result)
                        {
                            $pilotid=$tab$compt];

                            $requete = $DBPDO->prepare("SELECT COUNT( pirepid ) FROM tracker_pireps WHERE pilotid =$pilotid AND accepted =1");
                            $requete->execute(array($vol));
                            $nbvol=$requete->fetchColumn();

                            echo $pilotid=$tab$compt];
                            echo" ";
                            echo $nbvol;
                            echo '</br>';
                            $compt=$compt+1;
                        }

            }
        catch (PDOException $e) 
            {
                echo '<h6>OUPS:</h6>';
                echo '</br>';
                echo '<h5>L\'instruction pour la Base de Donnée n\'a pas été comprise correctement</h5>';
                echo '</br>';
                echo '</br>';
                echo '<h5>Module mis en someil</h5>';
            }
    }
catch (PDOException $e)
    {
        echo '<h6>OUPS:</h6>';
        echo '</br>';
        echo '<h5>Une base de donnée n\'est pas de bonne humeur pour le moment.</h5>';
        echo '</br>';
        echo '<h5>Veuillez réssayer plus tard</h5>';
        echo '</br>';
        echo '</br>';
        echo '<h5>Module mis en someil</h5>';
    }