Vous n'êtes pas connecté.


Bonjour,
J'aurai besion d'aide dans la création d'une fonction qui permet de travailler comme une base de donnée, une variable me renvoie un les informations ci-dessous :
Tableau a écrit:
p_id c_id ps bs pr br pl ping logintime idletime cprivs pprivs pflags ip nick loginname
2081 91 333756 91180784 508 30150 287 19 66590 943 1 4 16 "0.0.0.0" "Elisa" "DuckCorp"
2533 24 36969 7415010 27492 8897185 0 70 17777 0 0 0 0 "0.0.0.0" "titi66fr" ""
2534 84 54271 13871799 31580 10217301 0 68 15871 4235 0 0 0 "0.0.0.0" "Manki" ""
Je voudrai créer une fonction permettant de trier ces informations et de récupérer selon le pseudonyme (dans le tableau 'nick') toute la ligne, ainsi que d'obtenir l'information p_id.
Pouvez-vous m'aider dans la conception de ce code, car je ne sais pas part quoi commencer pour développer ce code ?
TOP Hors ligne


Hello,
tu peux en effet faire un simple tableau multidimensionnel.
Tu as déjà utilisé, ou pas ?
Tu veux juste faire trier par pseudonyme ?
Et récupérer d'un coup toutes les infos liées à ce pseudonyme ?
TOP Hors ligne


Oui, mais je ne sais pas du tout utiliser ce genre de choses...
TOP Hors ligne


Quand on ne sait pas, il faut apprendre
.
Surtout si tu sais précisément ce que tu veux utiliser, doit y avoir plein de tuto PHP, et de très bon livres.
Plus particulièrement, ce code devrait correspondre à ce que tu veux (ta base de données est comprise dans
function basededonnees($pseudonyme = FALSE) {
$bdd = Array(
'Elisa' => Array(
'p_id' => 2081,
'c_id' => 91,
'ps' => 333756,
'bs' => 91180784,
'pr' => 508,
'br' => 30150,
'pl' => 287,
'ping' => 19,
'logintime' => 66590,
'idletime' => 943,
'cprivs' => 1,
'pprivs' => 4,
'pflags' => 16,
'ip' => '"0.0.0.0"',
'loginname' => 'DuckCorp'
),
'test1' => Array(
'p_id' => 2081,
'c_id' => 91,
'ps' => 333756,
'bs' => 91180784,
'pr' => 508,
'br' => 30150,
'pl' => 287,
'ping' => 19,
'logintime' => 66590,
'idletime' => 943,
'cprivs' => 1,
'pprivs' => 4,
'pflags' => 16,
'ip' => '"0.0.0.0"',
'loginname' => 'DuckCorp'
),
'test2' => Array(
'p_id' => 2081,
'c_id' => 91,
'ps' => 333756,
'bs' => 91180784,
'pr' => 508,
'br' => 30150,
'pl' => 287,
'ping' => 19,
'logintime' => 66590,
'idletime' => 943,
'cprivs' => 1,
'pprivs' => 4,
'pflags' => 16,
'ip' => '"0.0.0.0"',
'loginname' => 'DuckCorp'
)
);
if(!$pseudonyme) {
ksort($bdd);
return $bdd;
} elseif(isset($bdd[$pseudonyme]))
return $bdd[$pseudonyme];
else
exit('Le pseudonyme demandé n'existe pas dans la BDD.');
}
// Affichage des infos d'un pseudo spécifique
echo '<h3>Infos de Elisa</h3>'."\n";
echo '<ul>'."\n";
foreach(basededonnees('Elisa') AS $champ => $valeur)
echo '<li>'.$champ.' : '.$valeur.'</li>'."\n";
echo '</ul>'."\n";
// Affichage de toutes les infos de la BDD affichées par pseudo, triés par ordre alphabétique
foreach(basededonnees() AS $pseudo => $infos) {
echo '<h3>'.$pseudo.'</h3>'."\n";
echo '<ul>'."\n";
foreach($infos AS $champ => $valeur)
echo '<li>'.$champ.' : '.$valeur.'</li>'."\n";
echo '</ul>'."\n";
}Bien entendu :
- à toi de voir comment tu peux générer le tableau $bdd de la fonction de façon efficace
- il ne peut pas y avoir deux fois le même pseudo (l'un écrase l'autre)
- pour accéder à une valeur spécifique : echo $bdd['Elisa']['ping'];
- sauf erreur(s) de ma part
TOP Hors ligne