Ankündigung

Einklappen
Keine Ankündigung bisher.

bestimmte abfrage aus db

Einklappen

Neue Werbung 2019

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

  • bestimmte abfrage aus db

    hallo,

    ich hab schon alles hier im forum "durchforstet", bin aber nicht fündig geworden...
    ich möchte bei einer statistikanzeige nicht nur die gesammtzahl der bisher angemeldeten mitglieder zu stehen haben, sondern auch wie viele sich "heute" registriert haben
    SELECT count(id) FROM tabelle
    irgendwie so muss des doch gehen, oder?
    wäre cool wenn jemand weiss was ich meine...

  • #2
    also wenn du sehen willst wie viele sich heute angemeldet haben, musst du auch eine art Datum in deiner Tabelle ablegen.

    SELECT COUNT(ID) FROM tabelle WHERE datum='heutiges datum'

    Kommentar


    • #3
      danke für die schnelle antwort

      ich werds gleich mal ausprobieren...

      Kommentar


      • #4
        ähm.. äh.. äh...
        also ein datum ist eingetragen in der tabelle wo die user drinn sind, das datum, wo sie sich angemeldet haben...
        nur möchte ich halt wissen, wieviele "heute" sich angemeldet haben...

        Kommentar


        • #5
          Zitat von msdudel
          ...das datum, wo sie sich angemeldet haben...
          nur möchte ich halt wissen, wieviele "heute" sich angemeldet haben...
          das datum, wo die user sich anmelden, wird in einer tabelle gespeichert... da muss es doch möglich sein, es irgendwie einzugrenzen, dass nur die neuen user von "heute" man zählen kann...

          Kommentar


          • #6
            hab jetzt vieles probiert aber bin leider zu keinem ergebnis gekommen
            SELECT count(id) FROM $tabelle1 WHERE regdate ='$datum'
            die datumsausgabe hab ich so:
            $datum= date("d.m.Y H:i");

            bin am verzweifeln

            Kommentar


            • #7
              Versuch mal
              PHP-Code:
              $query 'SELECT COUNT(id) 
                        FROM ' 
              $tabelle1 '
                        WHERE regdate = CURRENT_DATE()'

              Kommentar


              • #8
                wird wieder mal nur "0" ausgegeben...
                kann aber nicht sein, da auf jeden fall neue user sich registriert haben heute
                hier mal alles so wie ich es habe:
                $newmember=MYSQL_QUERY("SELECT COUNT(id) FROM $tabelle1 WHERE regdate ='CURRENT_DATE()'");
                zur anzeige der ausgabe habe ich folgendes:
                echo " ";
                echo "heute neue Mitglieder:";
                echo " ";
                while($row = mysql_fetch_row($newmember)) {
                echo "";
                for($i=0; $i < mysql_num_fields($newmember); $i++) {
                echo "$row[$i]";
                }
                echo "\n";
                }
                echo "
                ";

                Kommentar


                • #9
                  Zitat von msdudel
                  die datumsausgabe hab ich so:
                  $datum= date("d.m.Y H:i");
                  Was soll'n das sein? Ein String? Wenn Du das Datum korrekt als DATE bzw. DATETIME speicherst, klappt die Abfrage.

                  www.mysql.de/DATETIME

                  Kommentar


                  • #10
                    Du kannst current_date() natürlich nicht in Anführungszeichen stzen, es ist ja eine Funktion. Ausserdem stimmt an deinem Code sonst noch einiges nicht. Hier mal eine lauffähige Version:
                    PHP-Code:
                    $sql "SELECT COUNT(id) FROM $tabelle1 WHERE regdate =CURRENT_DATE()"
                    $newmember=MYSQL_QUERY($sql) or die(mysql_error());
                    echo 
                    " heute neue Mitglieder: ";
                    $row mysql_fetch_row($newmember)) 
                    echo 
                    "$row[0]
                    "

                    Da diese Abfrage immer nur eine Zeile zurück gibt, kannst du auf die while-Schleife verzichten, und weil du nur ein Feld abfrägst, auch auf die for-Schleife.

                    Kommentar


                    • #11
                      geht leider auch nicht...

                      Parse error: parse error in /home/www.....

                      Kommentar


                      • #12
                        Lies Dir die Fehlermeldung einfach mal durch, dann findest Du auch das fehlende Semikolon

                        Kommentar


                        • #13
                          Da du den Teil der Fehlermeldung, der eigentlich relevant ist, für dich behälst, ist nicht ganz einfach, dir weiter zu helfen. Aber ich habe mal in die Glaskugel geschaut, und dort gesehen, dass ich den Strichpunkt nach der ersten und vierten Zeile vergessen habe. Hättest du aber selber merken können.

                          Kommentar


                          • #14
                            ja.. oki.. habs dann auch bemerkt heut is montag und naja

                            wird aber wiedermal nur "0" ausgegeben obwohl neue user heut dazu gekommen sind
                            is doch kurios, oder?? :wink:

                            Kommentar


                            • #15
                              Als was für einen Datentyp ist "regdate" definiert?. Falls es "datetime" oder "timestamp" ist, ist natürlich auch die Zeit drin und der Vergleich schlägt fehl. Entweder du änderst den Typ auf date oder du machst den Vergleich mit dem formatierten Datum:
                              Code:
                              $sql = "SELECT COUNT(id) FROM $tabelle1 WHERE date_format(regdate, '%Y-%m-%d') = CURRENT_DATE()";

                              Kommentar

                              Lädt...
                              X