par
Superskunk » 10 sept. 2008, 12:23
Merci de ta réponse, mais je crains ne pas être à la hauteur.
Voici le tableau du troisième serveur :
https://91.121.146.195/~serveur/serveur ... gelist.php
En haut, on voit le nombre de maps.
Voici le code :
<?php
require "monitoring.php";
$key = 3;
if(!$client->InitWithIp($server[$key]['ip'],$server[$key]['port'])){
die('An error occurred - '.$client->getErrorCode().":".$client->getErrorMessage());
}
$client->query("Authenticate", $server[$key]['username'], $server[$key]['password']);
$response = $client->getResponse();
if(isset($response['faultCode']) && isset($response['faultString'])){
die("[".$response['faultCode']."]".$response['faultString']);
}
$client->query("GetStatus");
$response = $client->getResponse();
if(isset($response['faultCode']) && isset($response['faultString'])){
die("[".$response['faultCode']."]".$response['faultString']);
}
if (!$client->query('GetChallengeList', 200, 0));
else {
$ChallengeList = $client->getResponse();
if (!$client->query('GetCurrentChallengeIndex')) trigger_error("[".$client->getErrorCode()."] ".$client->getErrorMessage());
else $CurrentChallengeIndex = $client->getResponse() + 1;
$result = count ($ChallengeList);
echo $result;
foreach ($ChallengeList as $challenge) {
$FileName = $cp->toHTML($challenge['Name']);
echo '
<div style="border: 1px solid black;border-collapse:collapse;width:350px">
<tr>
<td>'.$FileName.'</td><br>
</tr>
</div>
';
}
}
?>
Donc pour le moment, il affiche toutes les maps.
Comme dit plus haut, je voudrais que ça n'affiche que 12maps par page.
Évidemment, je voudrais qu'il y ait des boutons "Suivant" et "Précédent".
Le mieux étant aussi d'avoir des boutons "1","2","3",... parce qu'avec 102 maps affichées sur des pages de 12, on arrive à 9 pages... Un peu difficile de s'y retrouver après.
Pour le moment, j'ai commencé à regarder un autre code pour apprendre, mais je suis un peu perdu.
<?php
$count= "12";
if(!$pos) $pos=0;
$SQL_Statement="SELECT * FROM players ORDER BY timeplayed DESC LIMIT $pos,$count";
$result=mysql_query($SQL_Statement);
$no_data=mysql_num_rows(mysql_query("SELECT * FROM players"));
$new_pos_next=$pos+$count;
if($new_pos_next>=$no_data){
$link_next="";
} else {
$link_next="<a href=\"?lang=".$lang."&page=".$page."&pos=" . $new_pos_next . "\" class=\"celltext\"><img src=\"img/next.gif\" border=\"0\"></a>";
}
$new_pos_prev=$pos - $count;
if($new_pos_prev<0){
$link_prev="";
} else {
$link_prev="<a "&pos=" . $new_pos_prev . "\" class=\"celltext\"><img src=\"img/prev.gif\" border=\"0\"></a>";
}
while($data=mysql_fetch_array($result)){
echo "<td>.$cp->toHTML($playername).</td>";
}
?>
Le code n'est pas très compliqué... Je pense en avoir saisi le fonctionnement
Mais vu que c'est avec des données extraites du base de donnée, je ne sais pas comment adapter cette fonction à mon code.
Merci d'avance de m'éclairer.
Merci de ta réponse, mais je crains ne pas être à la hauteur.
Voici le tableau du troisième serveur :
https://91.121.146.195/~serveur/serveurs/pagebyzizi/ajax/v3/includes/getchallengelist.php
En haut, on voit le nombre de maps.
Voici le code :
[php]<?php
require "monitoring.php";
$key = 3;
if(!$client->InitWithIp($server[$key]['ip'],$server[$key]['port'])){
die('An error occurred - '.$client->getErrorCode().":".$client->getErrorMessage());
}
$client->query("Authenticate", $server[$key]['username'], $server[$key]['password']);
$response = $client->getResponse();
if(isset($response['faultCode']) && isset($response['faultString'])){
die("[".$response['faultCode']."]".$response['faultString']);
}
$client->query("GetStatus");
$response = $client->getResponse();
if(isset($response['faultCode']) && isset($response['faultString'])){
die("[".$response['faultCode']."]".$response['faultString']);
}
if (!$client->query('GetChallengeList', 200, 0));
else {
$ChallengeList = $client->getResponse();
if (!$client->query('GetCurrentChallengeIndex')) trigger_error("[".$client->getErrorCode()."] ".$client->getErrorMessage());
else $CurrentChallengeIndex = $client->getResponse() + 1;
$result = count ($ChallengeList);
echo $result;
foreach ($ChallengeList as $challenge) {
$FileName = $cp->toHTML($challenge['Name']);
echo '
<div style="border: 1px solid black;border-collapse:collapse;width:350px">
<tr>
<td>'.$FileName.'</td><br>
</tr>
</div>
';
}
}
?>[/php]
Donc pour le moment, il affiche toutes les maps.
Comme dit plus haut, je voudrais que ça n'affiche que 12maps par page.
Évidemment, je voudrais qu'il y ait des boutons "Suivant" et "Précédent".
Le mieux étant aussi d'avoir des boutons "1","2","3",... parce qu'avec 102 maps affichées sur des pages de 12, on arrive à 9 pages... Un peu difficile de s'y retrouver après.
Pour le moment, j'ai commencé à regarder un autre code pour apprendre, mais je suis un peu perdu.
[php]<?php
$count= "12";
if(!$pos) $pos=0;
$SQL_Statement="SELECT * FROM players ORDER BY timeplayed DESC LIMIT $pos,$count";
$result=mysql_query($SQL_Statement);
$no_data=mysql_num_rows(mysql_query("SELECT * FROM players"));
$new_pos_next=$pos+$count;
if($new_pos_next>=$no_data){
$link_next="";
} else {
$link_next="<a href=\"?lang=".$lang."&page=".$page."&pos=" . $new_pos_next . "\" class=\"celltext\"><img src=\"img/next.gif\" border=\"0\"></a>";
}
$new_pos_prev=$pos - $count;
if($new_pos_prev<0){
$link_prev="";
} else {
$link_prev="<a "&pos=" . $new_pos_prev . "\" class=\"celltext\"><img src=\"img/prev.gif\" border=\"0\"></a>";
}
while($data=mysql_fetch_array($result)){
echo "<td>.$cp->toHTML($playername).</td>";
}
?>[/php]
Le code n'est pas très compliqué... Je pense en avoir saisi le fonctionnement :D
Mais vu que c'est avec des données extraites du base de donnée, je ne sais pas comment adapter cette fonction à mon code.
Merci d'avance de m'éclairer.