login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Uitwerking (Opgelost)

Offline finduilas - 19/02/2008 19:29
Avatar van finduilasPHP gevorderde Hallo,

Misschien een rare titel, maar ik weet geen beter
  1. if(isset($_GET['p']) && is_numeric($_GET['p']))
  2. {
  3. $page = $_GET['p'];
  4. }
  5. else
  6. {
  7. $page = 1;
  8. }
  9. $aantal = 10; //artikels per pagina
  10. $stop = $page * $aantal;
  11. $start = $stop - $aantal;
  12. $res = mysql_query("SELECT * FROM links WHERE cat_id='".$cat."' ORDER BY link_id DESC LIMIT ".$start.",".$stop);
  13. ?>
  14. <table style="border: 1px solid #000000;width: 340px;margin-left: 220px;margin-right: 20px;">
  15. <?php
  16. while($obj_res = mysql_fetch_object($res))
  17. {
  18. ?>
  19. <tr><td style="vertical-align:top;"><a href="<?php echo $obj_res->url ?>" class="artikelcat" style="font-size: 12px;"><?php echo $obj_res->url; ?></a><br /><?php echo $obj_res->omschrijving; ?></td></tr>
  20. <tr><td>&nbsp;</td></tr>
  21. <?php
  22. }
  23. ?>
  24. </table>
  25. <p style="width: 600px;text-align:center;"><br />
  26. <?php
  27. $ctop = mysql_query("SELECT link_id FROM links WHERE cat_id='".$cat."'");
  28. $berover = mysql_num_rows($ctop);
  29. for($i=1;$berover > 0;$i++)
  30. {
  31. if($i != 1)
  32. {
  33. echo ' - ';
  34. }
  35. if($i == $page) {
  36. echo $i;
  37. }
  38. else {
  39. echo '<a href="index.php?page=links&amp;cat='.$cat.'&amp;p='.$i.'">'.$i.'</a>';
  40. }
  41. $berover = $berover - $aantal;
  42. $lastpage = $i;
  43. }
  44. ?></p>


Ik heb nu dat hij 10 links toont en naargelang welke pagina welke links (navigatie enz é)

Maar nu heb ik in database links die internationaal zijn en nationaal en ik wil deze ordenen.

Als ik naar pagina 1 ga wil ik eerst de nationale zien ($obj_res-> inter == 0). Maar wanneer ik bijvoorbeeld 15 nationale links heb, en ik naar pagina 2 ga wil ik dat er dan ook nog eens 5 internationale links toon. Dit lukt me (trouwens geen probleem). Maar nu moet ik er een afbeelding voor plaatsen (1 afbeelding voor alle 5 de links (rowspan=5)) en moet ik nog een andere afbeelding plaatsen voor de 5 internationale links. Maar als er maar 4 nationale links meer zijn wil ik dat er dan 6 links worden getoont van de internationale.

Hoe los ik dit op met de afbeelding, heb al enkele dingen geprobeerd met meerdere query's,if-elses maar kom er niet echt uit. Hopelijk snappen jullie wat ik bedoel want het is niet zo eenvoudig om het uit te typen.

Kan iemand me helpen?

(Waar blijft die bump-knop ofzo? Nu moet ik de topic opnieuw posten omdat ik nog steeds geen antwoord kreeg en er niemand op reageerde.)

2 antwoorden

Gesponsorde links
Offline Dark_Paul - 19/02/2008 19:46
Avatar van Dark_Paul PHP ver gevorderde Ik neem aan dat $cat de categorie is? (nationaal of internationaal).
Kan je niet tellen hoeveel nationale en internationale links er zijn.
En dan aan de hand van je offset gaan tellen hoeveel nationale links er op de laatste pagina staan.
Aan de hand daarvan kan je dan ook je rowspan instellen.
Offline finduilas - 19/02/2008 19:52 (laatste wijziging 20/02/2008 18:43)
Avatar van finduilas PHP gevorderde Had ook zoiets in gedachten maar het is nog anders.
$cat is de categorie, dit is voor zowel internationale/nationale website's hetzelfde.

er is wel een andere waarde in de DB ('inter') die oftewel 0/1 is. Dit duidt aan of het een internationale site is of niet.

Nu werk ik met een paginasysteem om maximum 10 links/pagina te tonen
  1. $res = mysql_query("SELECT * FROM links WHERE cat_id='".$cat."' ORDER BY inter DESC LIMIT ".$start.",".$stop);


Hiermee krijg ik 10 links, die zowel inter als nationaal kan zijn (ORDER BY inter DESC) Ze komen wel niet door elkaar maar als er geen nationale site's meer zijn komen de nationale. (dit kan 7-3 zijn maar ook 3-7)

Als ik dan wil tellen hoeveel nationale site's er zijn kan ik dit niet.
Als ik een where gebruikt telt hij gewoon de andere niet mee.

Snap je het een beetje?

EDIT:
Dit werkt!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.2s