login  Naam:   Wachtwoord: 
Registreer je!
 Forum

nieuw of niet?

Offline BasDV - 16/05/2005 20:40 (laatste wijziging 16/05/2005 20:41)
Avatar van BasDVMySQL interesse Ik heb in mijn database staan: naam, naar, gelezen

Ik wil dat een script in mijn database kijkt en bij bijvoorbeeld bij de rijen bij "naar" de hoeveelheid bijvoorbeeld 5 kijkt of er bij die rij(en) bij "gelezen" er rijen staan met de waarde 0.

En dan wil ik dat als die er staan dat er op de pagina staat bijvoorbeeld "U heeft (het aantal rijen met als waarde 0 bij gelezen van naar 5) ongelezen berichten."

Weet iemand hoe je dit doet:?:

5 antwoorden

Gesponsorde links
Offline jopie - 16/05/2005 21:10
Avatar van jopie Onbekend Makkelijk toch?? gewoon basis van sql: select query

SELECT COUNT(1) FROM bericht WHERE naar={userid} AND gelezen=0

en dan:

echo 'U heeft '.mysql_result($result, 0).' ongelezen berichten.';
Offline BasDV - 17/05/2005 08:48
Avatar van BasDV MySQL interesse ik heb nu dit:
  1. <?
  2. $query = mysql_query("SELECT COUNT(*) FROM priveberichten WHERE naar='$memberid' AND gelezen=0");
  3. $result = mysql_num_rows($query);
  4.  
  5. if($result=="0"){
  6. echo "<font size=\"1\" face=\"Verdana\" color=\"black\">U heeft geen nieuwe berichten.</a>";
  7. }
  8. else{
  9. echo "<font size=\"1\" face=\"Verdana\" color='red'><a href=\"priveberichten.php\" onclick=\"NewWindow(this.href,'name','100%','80%','yes');return false\"><b>$result</b> nieuw(e) bericht(en).</a></font>";
  10. }
  11.  
  12. ?>
als er dan 2 berichten zijn staat er 1 nieuw(e) bericht(en) wat doe ik fout?
Offline Gerard - 17/05/2005 09:38 (laatste wijziging 17/05/2005 09:39)
Avatar van Gerard Ouwe rakker Je werkt met een COUNT query welke als resultaat 1 row met 1 veld teruggeeft waarin het aantal staat wat je optelt met de count

het volgende zal jouw probleem oplossen:

  1. <?php
  2. $qGetMsg = mysql_query("SELECT COUNT(*) FROM priveberichten WHERE naar = '".$memberid."' AND gelezen = '0'");
  3.  
  4. if (mysql_result($qGetMsg, 0) > 0) {
  5. echo "<font size=\"1\" face=\"Verdana\" color='red'><a href=\"priveberichten.php\" onclick=\"NewWindow(this.href,'name','100%','80%','yes');return false\"><b>".mysql_result($qGetMsg, 0)."</b> nieuw(e) bericht(en).</a></font>";
  6. } else {
  7. echo "<font size=\"1\" face=\"Verdana\" color=\"black\">U heeft geen nieuwe berichten.</a>";
  8. }
  9. ?>
Offline BasDV - 17/05/2005 12:25
Avatar van BasDV MySQL interesse bedankt! en kan je ook instellen dat als er maar 1 bericht is dat hij de echo't ietsvan: "1 nieuw bericht."?

Hoe doe je dat?
Offline Thomas - 17/05/2005 13:20
Avatar van Thomas Moderator De tekst die je afdrukt hangt af van het aantal berichten:

  1. /*
  2. aanname: $aantal bevat het aantal nieuwe berichten (afkomstig
  3. uit een query)
  4. */
  5. echo "U heeft ".$aantal." nieuw".($aantal == 1 ? "e" : "")." bericht".($aantal == 1 ? "" : "en").".";
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.205s