[PHP] $i niet opnieuw

Gestart doorShahiem12 reacties100 weergaven

13 berichten · pagina 1 van 1

Shahiem

Lid · Topicstarter

Berichten
20.364
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Hey,

Ik heb een probleem. Als ik $i in een while zet dan krijg ik wel wat ik wil, dus dat er steeds +1 bij komt, maar nu heb ik een een paginatiescript en dan begint hij weer van 1 tot 15.

Hoe kan ik ervoor zorgen dat hij niet op een nieuwe pagina opnieuw telt?

Alvast bedankt.
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Details? Code?
0
Berichten
8.602
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
DUs als je op pagina 3 zit moet hij bij 3 beginnen of?
0
Berichten
6.485
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Als het om page systeem gaat kan je beter niet deze methode gebruiken.

$_GET[p] = $factor;

$stop = $factor * 15;
$start = $stop - 14;

En in de sql met LIMIT $start, $stop
0
Berichten
8.602
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
$_GET[p] = $factor;

=>

$factor = $_GET[p];

Denk ik dan
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Milan schreef:
$_GET[p] = $factor;

=>

$factor = $_GET[p];

Denk ik dan
Is denk ik zelfde, maar ik snap niet wat Shahiem wilt?
0
Berichten
15.446
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Vriendje schreef:
Eerdere citaten tonen
Milan schreef:
$_GET[p] = $factor;
=>

$factor = $_GET[p];

Denk ik dan

Is denk ik zelfde, maar ik snap niet wat Shahiem wilt?
Shahiem haalt info op uit de database, en dit zijn bv 100 resultaten die hij dan wil nummeren van 1 t/m 100 maar hij wil niet alles op 1 pagina. Hij heeft dus een paginasysteem waar 15 resultaten per pagina opkomen. Op pagina 1 nummer 1 t/m 15, op pagina 2 16 t/m 30 op pagina 3 31 t/m 45 enz enz. Maar hoe hij het nu doet begint de teller weer op 1 op pagina 2 dus hij zoekt een manier op de telling op pagina 2 met 16 te laten beginnen... snap je het nu?
0
Shahiem

Lid · Topicstarter

Berichten
20.364
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Zo dus:

Pagina 1: 1 t/m 15
Pagina 2: 15 t/m 30 ...

toevoeging op 28 januari 2012, 19:20:33:
Marjolein schreef:
Eerdere citaten tonen
Vriendje schreef:
Eerdere citaten tonen
Milan schreef:
$_GET[p] = $factor;
=>

$factor = $_GET[p];

Denk ik dan

Is denk ik zelfde, maar ik snap niet wat Shahiem wilt?
Shahiem haalt info op uit de database, en dit zijn bv 100 resultaten die hij dan wil nummeren van 1 t/m 100 maar hij wil niet alles op 1 pagina. Hij heeft dus een paginasysteem waar 15 resultaten per pagina opkomen. Op pagina 1 nummer 1 t/m 15, op pagina 2 16 t/m 30 op pagina 3 31 t/m 45 enz enz. Maar hoe hij het nu doet begint de teller weer op 1 op pagina 2 dus hij zoekt een manier op de telling op pagina 2 met 16 te laten beginnen... snap je het nu?
Klopt smile
0
Berichten
6.485
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Dan moet je dus mijn manier gebruiken. (je bedoelt denk ik trouwens 1-15, 16-30).

[COLOR= #0000BB]<?php
$factor[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$_GET[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]p[/COLOR][COLOR= #007700]];[/COLOR] [COLOR= #FF8000]// pagina ophalen[/COLOR]

[COLOR= #0000BB]$stop[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$factor[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]15[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #FF8000]// tweede getal is aantal paginas.[/COLOR]
[COLOR= #0000BB]$start[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$stop[/COLOR] [COLOR= #007700]-[/COLOR] [COLOR= #0000BB]14[/COLOR][COLOR= #007700];[/COLOR] 

[COLOR= #0000BB]$query[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]"SELECT * FROM table LIMIT "[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$start[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000]","[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$stop[/COLOR][COLOR= #007700])[/COLOR] or [URL="http://www.php.net/die"]die[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/mysql_error"]mysql_error[/URL][COLOR= #007700]());[/COLOR]
?>


je kan dan met is_numeric enzo nog wat controles uitvoeren.
0
Shahiem

Lid · Topicstarter

Berichten
20.364
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Wilt niet echt lukken

toevoeging op 3 juni 2012, 01:23:18:
Weet iemand hier nog een oplossing voor?
0
Shahiem

Lid · Topicstarter

Berichten
20.364
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Weet iemand hier nog een oplossing voor?
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
"Wilt niet echt lukken"

Wat wil er niet lukken, wat krijg je, welke errors krijg je, wat is de code die je hebt, heb je een voorbeeld online.

Met "Wilt niet echt lukken" kunnen wij niet veel. Dat van Rogier hoort namelijk met goede implementatie gewoon te werken..

$start is dan namelijk het getal dat jij als beginwaarde van $i wil hebben.
0
Shahiem

Lid · Topicstarter

Berichten
20.364
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Als ik dit doe dan komt er op de volgende pagina nogmaals een nieuwe nummering.
$factor =  (isset($param[1]) && ctype_digit($param[1]) && $param[1] >= 1 ? $param[1] : (isset($param[1]) && $param[1] == laatste ? 4 : 1)); // pagina ophalen
            $stop = $factor * 15; // tweede getal is aantal paginas.
            $start = $stop - 14; 
            $pageQuery = $mysql->query("SELECT l.id, l.gebruikersnaam, l.ip, l.registratieDatum, (SELECT COUNT(id) FROM gtst_leden) as aleden, (SELECT COUNT(id) FROM gtst_forum_posts WHERE auteur_id = l.id) as post FROM gtst_leden l ORDER BY l.gebruikersnaam LIMIT  ".$start.",".$stop);
            if($mysql->num_rows($pageQuery) >= 1)
            {
                
                
                $star = $start;
                ?>
                <table>
                    <tr style="font-weight: bold;">
                        <td style="width: 20px;">#</td>
                        <td style="width: 80px;">Gebruikersnaam</td>
                        <td style="width: 80px;">IP</td>
                        <td style="width: 140px;">Registratiedatum</td>
                        <td style="width: 140px;">Aantal forumpost</td>
                        <td style="width: 80px;">Opties</td>
                    </tr>
                    [COLOR= #0000BB]<?php[/COLOR]
    

                    [URL="http://www.php.net/while"]while[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$pageFetch[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$mysql[/COLOR][COLOR= #007700]->[/COLOR]fetch[COLOR= #007700]([/COLOR][COLOR= #0000BB]$pageQuery[/COLOR][COLOR= #007700]))
                    {[/COLOR]
                    
                        [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++;[/COLOR]


toevoeging op 3 juni 2012, 01:47:39:
Het is me nu gelukt biggrin
$huidige = (isset($param[1]) && ctype_digit($param[1]) && $param[1] >= 1 ? $param[1] : (isset($param[1]) && $param[1] == laatste ? 4 : 1));
            $factor =  (isset($param[1]) && ctype_digit($param[1]) && $param[1] >= 1 ? $param[1] : (isset($param[1]) && $param[1] == laatste ? 4 : 1)); // pagina ophalen
            $stop = $factor * 15; // tweede getal is aantal paginas.
            $start = $stop - 15; 
            $pageQuery = $mysql->query("SELECT l.id, l.gebruikersnaam, l.ip, l.registratieDatum, (SELECT COUNT(id) FROM gtst_leden) as aleden, (SELECT COUNT(id) FROM gtst_forum_posts WHERE auteur_id = l.id) as post FROM gtst_leden l ORDER BY l.gebruikersnaam LIMIT  ".$start.",".$stop);
            if($mysql->num_rows($pageQuery) >= 1)
            {
                
                ?>
                <table>
                    <tr style="font-weight: bold;">
                        <td style="width: 20px;">#</td>
                        <td style="width: 80px;">Gebruikersnaam</td>
                        <td style="width: 80px;">IP</td>
                        <td style="width: 140px;">Registratiedatum</td>
                        <td style="width: 140px;">Aantal forumpost</td>
                        <td style="width: 80px;">Opties</td>
                    </tr>
                    [COLOR= #0000BB]<?php[/COLOR]
    

                    [URL="http://www.php.net/while"]while[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$pageFetch[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$mysql[/COLOR][COLOR= #007700]->[/COLOR]fetch[COLOR= #007700]([/COLOR][COLOR= #0000BB]$pageQuery[/COLOR][COLOR= #007700]))
                    {[/COLOR]
                    
                        [COLOR= #0000BB]$start[/COLOR][COLOR= #007700]++;[/COLOR]
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren