Toon posts:

[php] NAV Page

Pagina: 1
Acties:

Verwijderd

Topicstarter
Het stukje code hieronder zorgt ervoor dat het aantal pagina's wordt berekend en deze als volgt als links worden weergegeven:

1|2|3|enz...

Het script werkt wel maar nu zit ik met het volgende:

Ik zou graag willen dat de pagina die nu actief is wel in de cijferreeks staat meer niet als link.

Hoe kan dit?

p.s. hij leest gegevens uit een dir en niet uit een database
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
 
<? 
$filecount = 0; 
$d = dir("$path"); 
while($entry=$d->read()) { 
if(eregi(".jpg|.jpeg|.JPG|.JPEG|.gif|.bmp|.png", $entry)){ 
$filecount++; 
} 
} 
$d->close(); 
$amountpages = ceil( $filecount / ($clm * $rows) ); 
$int1 = 0; 
while ($int1 < $amountpages){ 
$int2 = $int1 + 1; 
echo "<font color=\"white\">[</font><A HREF=\"$PHP_SELF?page=$int1\">$int2</A><font color=\"white\">]</font> "; 
$int1++; 
} 
?> 
?>

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

dat kan je toch wel met een if-je afvangen?
je weet het huidige nummer
if($nummer==$huidig)
{
geen link
}
else
{
wel link
}

Doet iets met Cloud (MS/IBM)


Verwijderd

Topicstarter
Het moet er dan zo uit komen te zien:

1|2|3|enz...

en als page 2 dan actief is

1|2|3|enz...

De link om tot page 2 te komen is filename.php?page=2
link in php code:
?page=$int1

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

PHP:
1
2
3
4
5
6
7
8
9
10
<?
if($page==$int1)
{
   //geen link
}
else
{
   //wel link
}
?>

dit moet het zijn volgens mij

Doet iets met Cloud (MS/IBM)


Verwijderd

Topicstarter
Heb nu dit:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?
 
$filecount = 0;
$d = dir("$path"); 
while($entry=$d->read()) { 
if(eregi(".jpg|.jpeg|.JPG|.JPEG|.gif|.bmp|.png", $entry)){ 
$filecount++; 
}
} 
$d->close(); 

$amountpages = ceil( $filecount / ($clm * $rows) );

$int1 = 0;
while ($int1 < $amountpages){
$int2 = $int1 + 1;
if($page==$int1)
{

}
else
{
echo "<font color=\"white\">[</font><A HREF=\"$PHP_SELF?page=$int1\">$int2</A><font color=\"white\">]</font> ";
?>

Dan geeft die parse error

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

als je wat overzichtelijk zou coden
zou je het gelijk zien
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?
 
$filecount = 0;
$d = dir("$path"); 
while($entry=$d->read()) 
{ 
    if(eregi(".jpg|.jpeg|.JPG|.JPEG|.gif|.bmp|.png", $entry))
    {
        $filecount++; 
    }
} 
$d->close(); 

$amountpages = ceil( $filecount / ($clm * $rows) );

$int1 = 0;
while ($int1 < $amountpages)
{
    $int2 = $int1 + 1;
    if($page==$int1)
    {

    }
    else
    {
        echo "<font color=\"white\">[</font><A HREF=\"$PHP_SELF?page=$int1\">$int2</A><font color=\"white\">]</font> ";
    } //deze miste je dus

} //deze miste je dus
?>

bekijk hier [topic=152278/1/25] mijn stukje eens

Doet iets met Cloud (MS/IBM)


Verwijderd

Topicstarter
krijg nu deze foutmelding
<b>Fatal error</b>: Maximum execution time of 30 seconds exceeded in <b>/home/sites/site2/web/fototest.php</b> on line <b>325</b>

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

dat klopt

kijk eens naar die while
daar klopt iets niet

en nee ik zeg niet wat :)
ga eerst maar eens ff zoeken

Doet iets met Cloud (MS/IBM)


Verwijderd

Topicstarter
Misschien dit
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?
$d->close(); 
$amountpages = ceil( $filecount / ($clm * $rows) );
$int1 = 0;
while 
($int1 < $amountpages)
{    
$int2 = $int1 + 1;    
if($page==$int1)    
{    

$int2 // dit misschien ertussen?

}    
else    
{        
echo "<font color=\"white\">[</font><A HREF=\"$PHP_SELF?page=$int1\">$int2</A><font color=\"white\">]</font> ";    
} 

} 
?>

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

kijk nou eens goed naar die while voorwaarden

Doet iets met Cloud (MS/IBM)


Verwijderd

Topicstarter
de laatste } niet?

ik ben al zo lang op dit script aan het staren ....

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op vrijdag 23 november 2001 12:44 schreef Ketje het volgende:
de laatste } niet?

ik ben al zo lang op dit script aan het staren ....
while voorwaarden != }

Doet iets met Cloud (MS/IBM)


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 08:12

Crazy D

I think we should take a look.

Op vrijdag 23 november 2001 12:01 schreef D2k het volgende:
en nee ik zeg niet wat :)
ga eerst maar eens ff zoeken
Ahh, mag ik een hintje geven? Zelfs ik zie het :P

Overigens, als je zolang naar een script zit te staren, kun je het beter ff wegleggen en een uurtje compleet wat anders gaan doen. Zodra je je blind zit te staren op een script dan kun je de mafste dingen over het hoofd zien omdat je het script niet meer leest, maar het uit je geheugen haalt (goh mensen lijken soms toch op computers.. handig hoor, dat cachen ;)). Ik heb op die manier weleens een uur over iets heen zitten kijken wat ik echt in hoofdletters met allemaal sterretjes eromheen en zo (zodat het lekker opvalt :P) had neergezet, juist om het snel terug te vinden |:(
En dan kijk je een half uur later en dan ga je |:( in het echt doen omdat je "zo stom was dat je er over heen keek" (naja dat zeggen m'n collega's dan :P)

Exact expert nodig?


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op vrijdag 23 november 2001 13:09 schreef CrazyD_at_work het volgende:

[..]

Ahh, mag ik een hintje geven? Zelfs ik zie het :P
neej >:)

klik

dit is echt basic hoor :)

Doet iets met Cloud (MS/IBM)


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Doe er es error_reporting(E_ALL); helemaal vooraan in je script bij.

Elke melding die je dan krijgt moet op te lossen zijn.

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op vrijdag 23 november 2001 13:52 schreef ACM het volgende:
Doe er es error_reporting(E_ALL); helemaal vooraan in je script bij.

Elke melding die je dan krijgt moet op te lossen zijn.
is nergens voor nodig volgens mij bij dit probleem


($int1 < $amountpages)


dat is niet goed/volledig verwerkt in de while

heb ik het toch weer opgelost

Doet iets met Cloud (MS/IBM)


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op vrijdag 23 november 2001 14:09 schreef D2k het volgende:
is nergens voor nodig volgens mij bij dit probleem

($int1 < $amountpages)

dat is niet goed/volledig verwerkt in de while
Humm, maakt idd niet zoveel uit. Maar de code is volledig legaal hoor :)

Nadeel is alleen dat die $int1 altijd kleiner dan $amountpages blijft ;)

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op vrijdag 23 november 2001 14:13 schreef ACM het volgende:

[..]

Humm, maakt idd niet zoveel uit. Maar de code is volledig legaal hoor :)

Nadeel is alleen dat die $int1 altijd kleiner dan $amountpages blijft ;)
tja dat weet jij, dat weet ik maar dat weet ketje niet :+

Doet iets met Cloud (MS/IBM)


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Denk je dat ik dat voor de grap zei? :P

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op vrijdag 23 november 2001 14:22 schreef ACM het volgende:
Denk je dat ik dat voor de grap zei? :P
nee hoor
je gaf gewoon de oplossing :)

Doet iets met Cloud (MS/IBM)

Pagina: 1