SQL - Fehlermeldung unterdrücken

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

  • SQL - Fehlermeldung unterdrücken

    Wie unterdrücke ich die Fehlermeldung bei einem Selectbefehl, wenn es den Wert in der DB überhaupt nicht gibt. Beispiel:

    Ich habe folgende Funktion:

    $abfrage = "SELECT sum($spalte)
    FROM minigame_spielstatistik
    WHERE where stat_spieler_id = '$spieler'";

    $erg = mysql_db_query($db_name,$abfrage,$verbindung);

    $row = mysql_fetch_row($erg);


    if (!isset($row[0])) {$row[0] = 0;};

    echo $row[0];

    Wenn es den Wert $spieler in der db nicht gibt, meldet mir sql natürlich den Fehler, oder? Wie schalte ich diese Fehlermeldung nun so ab, dass er mir dann nur den Wert:'0' ausgibt?

    Vielen Dank!

  • #2
    hi

    einfach vorher abfragen ob es werte gibt:

    PHP-Code:
    $abfrage "SELECT sum($spalte)
    FROM minigame_spielstatistik
    WHERE where stat_spieler_id = '
    $spieler'";

    $erg mysql_db_query($db_name,$abfrage,$verbindung);

    if (
    mysql_num_rows($erg)==0)
                echo 
    "0";
    else {
                        
    $row mysql_fetch_row($erg);
                        if (!isset(
    $row[0])) {$row[0] = 0;};
                                  echo 
    $row[0];

    gruss von

    pau

    Kommentar


    • #3
      Hi,

      irgendwie funzt es net...kannste das nochmal prüfen, bitte.

      Gruß

      Kommentar


      • #4
        hi

        was gibt er denn genau als fehlermeldung?

        gruss von pau

        Kommentar


        • #5
          PHP-Code:
          $abfrage "SELECT count(*)
          FROM minigame_spielstatistik
          WHERE where stat_spieler_id = '
          $spieler'";

          $erg mysql_db_query($db_name,$abfrage,$verbindung);
          list(
          $anzahl)=mysql_fetch_array($erg);
          echo 
          $anzahl;  //wird dir "0" ausgeben. wenns kein datensatz gibt, ansonsten die anzahl der datensätze 
          meine Projekte bestaunen: http://www.kleiza.de

          Kommentar


          • #6
            Hallo, habe es in der Zwischenzeit anders gelöst:



            $abfrage = "SELECT IFNULL(sum($spalte),0)
            FROM minigame_spielstatistik
            WHERE stat_spieler_id = $spieler";

            $erg = mysql_db_query($db_name,$abfrage,$verbindung);

            $row = mysql_fetch_row($erg);
            echo $row[0];

            Kommentar

            Lädt...
            X