login  Naam:   Wachtwoord: 
Registreer je!
 Forum

2 Problemen met SQL query

Offline Mmore - 04/06/2007 12:59
Avatar van MmoreMySQL interesse De code:
http://plaatscode.be/5531/

Het probleem:
http://img177.i...ro1mw6.jpg

Als het goed is wordt de class van de td om en om afgewisselt waardoor je verschillende kleuren krijgt, nu hebben de 2 laatste topics dezelfde class?

Tevens zouden ze gesorteerd moeten worden op de laatste reacties, ik geef dat wel aan in de query maar zoals je ziet op de screen shot geeft hij een topic met geen berichtje als eerste terug 

10 antwoorden

Gesponsorde links
Offline marten - 04/06/2007 13:01 (laatste wijziging 04/06/2007 13:02)
Avatar van marten Beheerder
  1. <?php
  2. $a++;
  3. if($i == 1) {
  4. $achtergrond = "footer";
  5. $i = 0;
  6. } else {
  7. $achtergrond = "topic";
  8. $i = 1;
  9. }?>


veranderen in

  1. <?php
  2. if($i == 1) {
  3. $achtergrond = "footer";
  4. $i = 0;
  5. } else {
  6. $achtergrond = "topic";
  7. $i = 1;
  8. $i++;
  9. }?>


$a++ en dan $i controleren?
Offline Mmore - 04/06/2007 13:05
Avatar van Mmore MySQL interesse @Marten: Klinkt inderdaad logisch maar het werkt niet, jouw stukje geeft alleen maar de klasse 'topic' terug!
Offline citroen - 04/06/2007 13:12
Avatar van citroen Onbekend Wat staat er in je css bij .topic en .footer.
En ik zie in je code nog dit staan: <a class="topic" moet die ook niet $achtergrond zijn?
Offline Mmore - 04/06/2007 13:17
Avatar van Mmore MySQL interesse Nee de link class moet altijd topic zijn :-)

  1. td.footer {
  2. background-color : #242424;
  3. color: #fff;
  4. font-style: normal;
  5. font-family : verdana, helvetica, arial, times new roman, sans-serif;
  6. font-size : 12px;
  7. }
  8.  
  9. TD.topic{
  10. background-color:#393939;
  11. font-family : verdana, helvetica, arial, times new roman, sans-serif;
  12. font-size: 13px;
  13. }

Ik denk eerder dat het aan de code ligt want ik heb deze code precies overgenomen van iets dat ik eerder in elkaar gezet had en daar werkte het wel..
Offline Ultimatum - 04/06/2007 13:24 (laatste wijziging 04/06/2007 13:27)
Avatar van Ultimatum PHP expert
  1. <?php
  2. $i = 1;
  3. if($i == 1) {
  4. $achtergrond = "footer";
  5. $i = 0;
  6. } else {
  7. $achtergrond = "topic";
  8. $i = 1;
  9. }?>


Zo dan? Je kan het trouwens ook veel makkelijker doen

  1. <?php
  2. $i = 0;
  3. $background = ($i++%2 == 0) ? 'footer' : 'topic';
  4. ?>

Bovenstaande zou moeten werken.

@marten, jouw code gaat niet werken omdat hij gelijk naar de else gaat, dan maak je van $i 1 en daarna verhoog je hem met 1, dus word hij 2 (Joepie ik kan tellen ). Als hij dan weer bovenaan komt slaat hij de if over en gaat naar de else 
Offline Mmore - 04/06/2007 13:30
Avatar van Mmore MySQL interesse Ultimatum, jouw code geeft alleen maar 'footer' als output..
Ik had er even ondergeschreven: "echo $achtergrond;" en dit geeft:

  1. footer footer footer footer footerfooter

Alles is gescheide behalve die laatste 2, die staan tegen elkaar :?
Offline Ultimatum - 04/06/2007 13:39
Avatar van Ultimatum PHP expert Je zet $i = 0; zeker binnen de while? Je moet die buiten de while houden ander word die elke keer weer 0. En die andere regel zet je wel binnnen de while
Offline Mmore - 04/06/2007 13:44
Avatar van Mmore MySQL interesse Klopt dat werkt! Ik krijg nu echter alsnog:

footer topic footer topic footertopic

Op de een of andere manier gaat het dus de 5e keer mis.. Stel ik voeg nog 100 topics toe dan gaat dat prima, alleen de 4e en 5e worden allebei 'topic' in plaats van 'topic' en dan 'footer'
Offline Ultimatum - 04/06/2007 13:57
Avatar van Ultimatum PHP expert Maakt toch niets uit, je zet het toch in een class dus dan heb je er geen problemen mee (als het goed is)
Offline citroen - 04/06/2007 14:10
Avatar van citroen Onbekend zet in het begin van de while $achtergrond = "" zodat die variabele zeker leeg is.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.217s