24 Stunden zeit ueberpruefung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 24 Stunden zeit ueberpruefung

    Hallo!

    ich wmoechte gerne ueberpruefen ob jemand in den letzten 24 stunden 3mal gepostet hat .. wie kann ich das pruefen..

    mysql_db_select("bla",SELECT count(usermail) FROM usermails WHERE fromuser='$userid', .....

    soweit ist das schon klar.. nur die Zeit abfrage fehlt mir .. in der db wird natuerlich ein unixtimestamp abgespeichert bei jedem post.. also muesste ich praktisch nur noch now() und die timestamps ueberpruefen.. aber wie mache ich das mit der 24 stunden begrenzung? .. es darf nicht die mails mitzaehlen die zb vor 25 oder noch mehr stunden geschrieben wurden..

    hoffe das es solala verstaendlich geworden ist... Danke schonmal fuer die Hilfe..


  • #2

    SELECT member, count(usermail) AS COUNTED
    FROM usermails
    WHERE fromuser='$userid'
    AND zeitfeld>=NOW()-INTERVAL 24 HOUR
    GROUP BY member
    HAVING COUNTED>=3
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      huh...

      das ging sehr schnell.. hehe .. vielen Dank @goth ..werde es nachher gleich mal probieren.

      Kommentar


      • #4
        mhh., irgendetwas mach ich falsch.. als result bekomme ich immer die antwort:


        Warning: Unable to jump to row 0 on MySQL result index 2 ...

        ich mache immer - mysql_result($check,0); - (wobei $check natuerlich der db query ist )

        ...ich habe de nteil mit der HAVING anweisung mal weggelassen.. weil ich das ergebnis spaeter mit if(... ) ueberpruefen moechte..

        was mach ich falsch? ... ich moechte das eine bestimmte 'userlevel', nur maximal 3 mail am tag in der db plazieren kann.. was ich dann auch spaeter abfrage.. wie schon gesagt via if(..)

        Kommentar


        • #5
          Mach's mal Schritt für Schritt ... wie's ein guter Debugger macht ...

          Schau erstmal was das Statement z.B. mit dem phpMyAdmin macht ...

          oder gib' mal die MySQL-Fehlermeldungen aus z.B.:

          PHP-Code:
          $result=mysql_db_query("bla""SELECT member, count(usermail) AS COUNTED FROM usermails WHERE fromuser='$userid' AND zeitfeld>=NOW()-INTERVAL 24 HOUR GROUP BY member HAVING COUNTED>=3") or die(mysql_error()); 
          carpe noctem

          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

          Kommentar


          • #6
            ok,

            also PHPmyADMIN meint es sei alles ok, mit der mysql_error ausgabe bekomme ich die gleiche fehler meldung angezeigt, wie ich vorhin schon beschrieben hatte..

            hier ist mal meine abfrage:

            PHP-Code:
            $mailcheck mysql_db_query("db3","SELECT fromuser, count(usermail)  AS COUNTED FROM usermails WHERE fromuser='$userid'  AND timestamp>=NOW()-INTERVAL 24 HOUR GROUP BY fromuser HAVING COUNTED>=3") or die(mysql_error());
            $result1 mysql_result($mailcheck,0); 
            Zuletzt geändert von dESIGN; 10.07.2002, 21:39.

            Kommentar


            • #7
              Probier's mal mit array mysql_fetch_array ( resource Ergebnis-Kennung [, int Ergebnistyp])

              also:
              PHP-Code:
              $mailcheck mysql_db_query("db3","SELECT usermail, count(usermail)  AS COUNTED FROM usermails WHERE fromuser='$userid'  AND timestamp>=NOW()-INTERVAL 24 HOUR GROUP BY usermail HAVING COUNTED>=3") or die(mysql_error());
              while (
              $row mysql_fetch_array($mailcheck)) {
                 ...

              carpe noctem

              [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
              [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

              Kommentar


              • #8
                jep, mit mysql_fetch_array hatte ich es auch schon probiert.. will aber nicht... ich glaub ich muss mir eine andere loesung suchen.. aber trotzdem Danke!

                Kommentar

                Lädt...
                X