2010-11-08 13 views
0

Cela semble être la chose la plus simple au monde à faire, mais j'échoue, probablement à cause des mathématiques. De toute façon, ma situation est la suivante:Comment puis-je créer un ensemble d'options pour choisir combien de messages par page et quelle page afficher sur un blog

Dans ma programmation en cours de PHP, je me suis assigné pour faire un blog avec toutes les cloches et les sifflets normaux. J'ai parcouru un court chemin, mais j'ai déjà rencontré un problème qui, j'en suis sûr, a été résolu au moins une douzaine de fois, mais mon système Google ne parvient pas à trouver une solution.

Voici donc ce que je veux faire: Je veux avoir un certain nombre de liens sur la page qui permet à l'utilisateur de choisir le nombre de billets affichés sur chaque page ainsi que les liens changeant sur l'utilisateur.

Voici la page je travaille, il est en suédois, mais vous obtenez l'idée, les liens sont en bas: http://lamp.skola.skelleftea.se/~matste/elever/christian_l/blag/index.php

Et c'est le code que je l'ai écrit jusque-là, qui ne donne pas le résultat souhaité:

$antal = $_GET[antal]; 
if (!isset($antal)){ 
    $antal = 1; 
} 

$sida = $_GET[sida]; 
if (!isset($sida)){ 
    $sida = 0; 
} 

/*Some HTML markup here*/ 

$start = ($sida * $antal); 
$stop = ($sida * $antal) + $antal; 
$sql = "SELECT * FROM `posts` ORDER BY `number` DESC LIMIT {$start},{$stop}"; 
$posts = mysql_query($sql); 

/*The code that shows the fetched posts*/ 

$antalsVal = array(1, 3, 5, 10); 
echo '<table class="right"> <tr>'; 
foreach ($antalsVal as $val){ 
    echo '<td style="padding:0.7em"> <a href="http://lamp.skola.skelleftea.se/~matste/elever/christian_l/blag/index.php? 
    antal='. $val. '&sida='. $sida. '"> '. $val. ' </a></td>'; 
} 
echo '<td> <h5>: Inlägg per sida</td></table>'; 

$sidoVal = array(1, 2, 3, 4, 5); 
echo '<table class="left"> <tr> <td> <h5>Sida: </td>'; 
foreach ($sidoVal as $val){ 
    echo '<td style="padding:0.7em"> <a href="http://lamp.skola.skelleftea.se/~matste/elever/christian_l/blag/index.php 
    ?antal='. $antal. '&sida='. $val. '"> '. $val. ' </a></td>'; 
} 
echo '</table><br /><br /><br />'; 

/*Some ending markup*/ 

Répondre

0

Ceci n'a pas été testé. Ce n'est peut-être pas correct Mais essayez ceci.

Si $sida n'est pas réglé, réglez-le sur 1.

Laissez $start = ($sida * $antal) - $antal

Let $stop = $sida * $antal

+0

Le problème reste que quand je vais à la page 2, je reçois deux postes montrant au lieu d'un . Le site est maintenant ajusté pour mettre votre code YWE en jachère et montre ce symptôme. Sida = page, Inlägg per sida = messages par page. – Rovanion