kostenloser Webspace werbefrei: lima-city


Bestimmte Einträge im Mysql zählen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    d******f

    Also ich benötige einen Code, um mit php die Anzahl der Einträge mit einem bestimmten Eintrag zu zählen.
    Die gesamte Anzahl der Einträge zähle ich so :
    $select=mysql_query('SELECT COUNT(*) AS anzahl FROM listenstube_eintrag');
          $zeile=mysql_fetch_array($select);


    Nun benötige ich allerdings einen Code, der die Tabelle listenstube_eintrag durchsucht und nur die Einträge mit dem Inhalt "1" zählt.


    BSP.:
    Listenstube_einträge
    ID=1

    NAME: ==> Eintrag:
    -zahl==> 1
    -punkte ==> 2
    -hallo ==> 1
    -test ==> 9
    -mir fällt nix ein ==> 3

    Dann müsste das ergebnis ja 2 sein. Allerdings geht es halt um einzelne user also müsste noch ein "where ID=$user[ID]" dran.

    MFG Marvin

    Beitrag zuletzt geändert: 9.10.2010 16:23:51 von das-dorf
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Ich versteh den Sinn dahinter zwar nicht aber folgendes wäre machbar.
    Du schaust bei besagtem User in die Tabelle und läufst alle Felder durch und schaust, ob da 1 drin steht.
    Wenn ja, dann erhöhst du eine Zählervariable um 1. Dann schaust du weiter, bis du wieder 1 findest und erhöhst die Zählervariable wieder um 1.

    Natürlich alles per PHP.
  4. Autor dieses Themas

    d******f

    Nur wie mache ich das ^^
    Der Sinn ist das ich per zahlen einen Status ausgebe.
    1=registriert
    2=Nicht aktiviert
    ...

    Nun möchte ich anzeigen wie viele User bereits Registriert sind, und wie viele davon sich noch nicht Aktiviert haben. Das ganze geht über 1 User (eine Art referer).

    Nur brauche ich einen Code der dies macht. (sorry bin Anfänger).
    MFG Marvin
  5. Insofern du mit deiner Datenbanksache noch nicht zu weit bist, schau dir mal relationale Datenbanken an, die erleichtern die Sache unmerklich.

    Insofern der User sich registriert hat steht er in der Datenbank, insofern er das nicht tut, steht er nicht drin. So einfach.
    Dann braucht man schon nur noch ein Feld betrachten, welches auf true oder false zu stellen ist. Aktiviert true bedeutet, der User ist aktiviert.

    Dann braucht man am Ende nur noch zählen.

    Select .... Where Aktivierungsfeld = true;

    Kapiert?
  6. Autor dieses Themas

    d******f

    select COUNT(*) AS anzahl Where Aktivierungsfeld = true;
    so?

    Das ist schon richtig so... nur hast du das leider nicht richtig verstanden (Mein fehler :slant: )

    Also zu jedem User gibt es die Struktur mit den Feldern "eins", "zwei", "drei", "vier", ..."vierzehn".
    Damit hat der User Admin diese und auch Marvin und alle anderen. ich möchte aber nur die Felder mit dem Eintrag 1 vom User admin zählen nicht die von Marvin.

    Ich glaube ich aheb mich einfach falsch ausgedrückt.

    MFG Marvin
  7. $select=mysql_num_rows(mysql_query("SELECT * TABLE WHERE aktivierungsfeld='true'"));

    ...bin mit nicht sicher ob es das ist was du gesucht hast.
    ie Anzahl der Einträge mit einem bestimmten Eintrag zu zählen.


    lg
  8. Also so richtig verstanden, was Du mit Deiner Abfrage erreichen willst, habe ich nicht. Jedoch sollte nach Deiner Beschreibung folgende SQL-Abfrage zum Ziel führen:

    SELECT COUNT(*) AS anzahl FROM listenstube_eintrag
    WHERE ID=$user[ID]
    AND ( zahl = 1
            OR punkte = 1
            OR hallo = 1
            OR test = 1
            ... )


    War' s das ?

    LG

    BigBaer

    Beitrag zuletzt geändert: 11.10.2010 6:24:52 von bigbaer
  9. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!