Björn Freitag: Fehler bei Ausgabe

Hallo Forum,

ich hab eine SQL-Abfrage wo für ein bestimmtes Jahr gerechnet werden, soll wieviel Projekte waren.

Klappt auch wunderbar, wenn in dem jahr projekte waren!

Aber wenn im jahr keine waren, bringt er mir bei dieser abfrage natürlich einen fehler
mysql_Result($katanz_result,$x,0),
wie kann ich das verhindern?

mfg

björn Freitag

  1. hi,

    ich hab eine SQL-Abfrage wo für ein bestimmtes Jahr gerechnet werden, soll wieviel Projekte waren.
    Klappt auch wunderbar, wenn in dem jahr projekte waren!
    Aber wenn im jahr keine waren, bringt er mir bei dieser abfrage natürlich einen fehler

    prüfe vorher mit mysql_num_rows(), ob die abfrage ergebnisse zurückgeleifert hat.

    gruß,
    wahsaga

    --
    "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
    1. Hello,

      ich hab eine SQL-Abfrage wo für ein bestimmtes Jahr gerechnet werden, soll wieviel Projekte waren.
      Klappt auch wunderbar, wenn in dem jahr projekte waren!
      Aber wenn im jahr keine waren, bringt er mir bei dieser abfrage natürlich einen fehler

      prüfe vorher mit mysql_num_rows(), ob die abfrage ergebnisse zurückgeleifert hat.

      Das kommt erschwerend auch noch dazu. Ohjeh!
      Und dann könnte noch die Spalte [0] nicht exisieren.

      Harzliche Grüße aus http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      1. Die Spalte 0 muss es geben, sonst hätte die Abfrage ja keine Spalten!!! also kein resultat!

        das knnte man auch in die if-anweisung reinmachen!
        mit my_sql_fields() ;)

        mfg
        björn

    2. hi,

      ich hab eine SQL-Abfrage wo für ein bestimmtes Jahr gerechnet werden, soll wieviel Projekte waren.
      Klappt auch wunderbar, wenn in dem jahr projekte waren!
      Aber wenn im jahr keine waren, bringt er mir bei dieser abfrage natürlich einen fehler

      prüfe vorher mit mysql_num_rows(), ob die abfrage ergebnisse zurückgeleifert hat.

      Stand nur auf dem Schlauch, in while-schleifen nutze ich schon die abfrage die ganze zeit!

      danke trotzdem!

      gruß björn

  2. Hello,

    Aber wenn im jahr keine waren, bringt er mir bei dieser abfrage natürlich einen fehler
    mysql_Result($katanz_result,$x,0),
    wie kann ich das verhindern?

    Indem Du vorher die Gültigkeit von $katanz_result überprüfst.
    Da musst Du Deinem Script vertrauen, dass es gültig sit, wen es nicht identisch oder gleich false ist.

    also

    if($katanz_result)
    {
      echo 'Menge '.mysql_Result($katanz_result,$x,0);
    }
    else
    {
      echo 'Nix da';
    }

    Harzliche Grüße aus http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau
    1. hi tom,

      das klappt nicht so, weil die abfrage immer was in die variable gibt!

      trotzdem danke
      björn

      1. Hello,

        das klappt nicht so, weil die abfrage immer was in die variable gibt!

        Die Abfrage kann aber auch schiefgehen, weil die SQL-Verbindung oder das Statement nicht mitgespeilt haben. Du müsstest also beide Abfragen verknüpfen

        if($katanz_result)
        {
          if (mysql_num_rows($katanz_result) > $x))     ## Zeile 0 gibt Anzahl 1
          {
            echo 'Menge '.mysql_Result($katanz_result,$x,0);
          }
          else
          {
            echo 'Nix da';
          }
        }
        else
        {
          echo 'Abfrage schiefgegangen: '.mysql_error();
        }

        Harzliche Grüße aus http://www.annerschbarrich.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau