Announcement

Collapse
No announcement yet.

Einträge mit SELECT COUNT zählen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Einträge mit SELECT COUNT zählen

    Hallo miteinander,


    ich möchte die Einträge der Tabelle 'XYZ' meiner Datenbank zählen und habe mir folgendes aus dem I-Net gezogen ud angepasst

    $Eintraege = mysql_query("SELECT COUNT (*) FROM 'XYZ' ");
    echo $Eintraege;

    leider zeigt $Eintraege nichts an. Könnt Ihr mir da helfen?

    Vielen Dank

    Gruß
    Hanswurst1

  • #2
    sind diese zwei Zeilen dein einziger Code?
    Wo ist deine Verbindung zur Datenbank?

    Versuchs mal hiermit...
    PHP Code:
    <?php
                       $sql 
    "SELECT * FROM `XYZ`";
                       
    $erg mysql_query($sql);
                       
    $num mysql_num_rows($erg);
                       echo 
    $num;
    ?>
    Hier werden die Zeilen/ Einträge in einer Tabelle gezählt. Wenn Du es nun spezifizieren willst, dann gebe am schluss des MySQL- Befehls noch ein WHERE ein.
    PHP Code:
    <?php
    echo 'http://acs-it-worx.de/';
    echo 
    'http://www.youtube.com/user/ACSITWorx/'// mein YouTube Kanal
    echo '-----------------------------------------------------------------';
    echo 
    'http://www.autoservice-asberg.de/';
    ?>

    Comment


    • #3
      Hallo Hanswurst1,

      Originally posted by Hanswurst1 View Post
      ...
      $Eintraege = mysql_query("SELECT COUNT (*) FROM 'XYZ' ");
      echo $Eintraege;

      leider zeigt $Eintraege nichts an. Könnt Ihr mir da helfen?
      mysql_query() liefert als Ergebnis eine MySQL-Resourcenkennung oder False wenn das Statement nicht ausgeführt werden konnte. In deinem speziellen Fall mit Sicherheit "False" und da wird mit echo nunmal nichts angezeigt! Warum False? Weil du einen Syntaxfehler in deiner Abfrage hast! Du schreibst den Tabellennamen in einfache Anführungszeichen ' und kennzeichnest ihn damit als Literal. SELECT ... FROM [Literal] ist aber keine gültige MySQL-Syntax. Wenn überhaupt werden Tabellennamen in diese komischen Apostrophs ` gesetzt. Die sind aber genauso unnütz wie hinderlich - einziger Grund sie zu verwenden wären Tabellennamen mit Leer- oder Sonderzeichen - aber wer sowas macht hat es nicht besser verdient!
      Langer Rede kurzer Sinn:
      PHP Code:
      ...
      $Eintraege mysql_query("SELECT COUNT (*) anzahl FROM XYZ ");
      $Record mysql_fetch_assoc($Eintraege);
      print_r($Record);
      ... 
      @creator90:
      Das hier ist die blanke Ressourcenverschwendung:
      Originally posted by creator90 View Post
      ...
      PHP Code:
      <?php
                         $sql 
      "SELECT * FROM `XYZ`";
                         
      $erg mysql_query($sql);
                         
      $num mysql_num_rows($erg);
                         echo 
      $num;
      ?>
      ...
      Du fragst u.U. ein paar Millionen Zeilen ab, um zum Schluß zu wissen wie viele es sind! Das ist in etwa so, als ob du mit dem Auto von Berlin nach München fährst um rauszukriegen wie viele Kilometer es sind.
      Wenn die Zeilen eh gebraucht werden (du also sowieso nach München mußt), dann ist es OK auf diese Art die Anzahl der DS (der Kilometer) zu ermitteln, aber nicht wenn nur diese Anzahl benötigt wird.

      Gruß Falk
      Zuletzt editiert von Falk Prüfer; 27.11.2008, 09:32.
      Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

      Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

      Comment


      • #4
        klappt immer noch nicht

        bei mir kommt immer noch eine SQL Fehlermeldung.

        Jetzt kommt mal ein bisschen mehr Syntax...

        PHP Code:
        //Verbindung zum Datenbankserver herstellen
        $OpenConnect mysql_connect(ServerUserPassword
            or 
        printf ("Keine Verbindung zu Datenbankserver <b>%s</b> möglich: "Server);
        //Datenbank öffnen
        mysql_select_db(Datenbank)
            or 
        printf ("Kann Datenbank %s nicht oeffnen!"Datenbank);

        und nun die "Problemstelle"
        Ich möchte eine Auswahlliste erstellen, in der die versch. Tabellen der Datenbank angezeigt werden. In der Auswahlliste soll ebenfalls angezeigt werden, wie viele Elemente DS in der jeweiligen Tabelle enthalten sind.

        PHP Code:
        //Auswahl aller Tabellen in "Datenbank" anzeigen ohne Tabelle "Vorlage"
        printf ("\n<form action='%s' method='POST' target='_self'>"DateiPOST);
        $result mysql_list_tables(Datenbank);
            if (!
        $result) {  //Datenbank enthaelt keine Tabelle
                        
        echo  ("DB Fehler, Tabellen können nicht angezeigt werden\n");
                        
        printf  ("MySQL Fehler: " mysql_error());
                        exit; }
                echo (
        "Bitte wähle eine Tabelle der Datenbank aus:<br>");
                echo (
        "\n<select name='Tabelle'>"); 

                while (
        $row mysql_fetch_row($result) ) {
                    
        $TQuery "SELECT COUNT (*) anzahl FROM `" $row[0] . "`";
                    
        $Eintraege mysql_query($TQuery) or die ("</select></form>SQL-Fehler: "mysql_error());
                    
        $Record mysql_fetch_assoc($Eintraege);
                    if (
        $row[0] == $Tabelle AND $row[0] != "Vorlage") {
                        
        printf ("\n <option selected value='%s'>%s (%s)</option>"$row[0], $row[0], $Record); }
                    else if (
        $row[0] != "Vorlage") {
                        
        printf ("<option value='%s'>%s (%s)</option>"$row[0], $row[0], $Record); }
                    }
                echo (
        "\n</select>");

        Als Fehlermeldung erhalte ich jetzt immer
        SQL-Fehler: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*) anzahl FROM `Amplifier`' at line 1

        Vielen Dank für Eure Hilfe
        Zuletzt editiert von Hanswurst1; 27.11.2008, 14:30. Reason: Code in [PHP]

        Comment


        • #5
          ich habs gefunden...

          zwischen "COUNT" und "(*)" darf kein Leerzeichen stehen, also
          PHP Code:
           SELECT COUNT(*) FROM 
          anstatt
          PHP Code:
           SELECT COUNT (*) FROM 
          trotzdem vielen Dank für Eure Hilfe.

          Viele Grüße
          Hanswurst1

          Comment

          Working...
          X