rap: Anzahl eingefügter Datensätze ausgeben

Hallo,

ich möchte eine Variable hoch zählen, wenn ein Insert erfolgreich war, damit ich anschließend die Anzahl der (über eine Schleife) eingefügten Datensätze ausgeben kann.

Ich weiß, dass mysql_query wohl irgendetwas zurück gibt, habe aber keine Ahnung, wie ich das dann abfragen kann.

MFG

  1. Hi!

    Ich weiß, dass mysql_query wohl irgendetwas zurück gibt, habe aber keine Ahnung, wie ich das dann abfragen kann.

    Du greifst sicher nicht zum ersten Mal auf die Ergebnisse von Funktionen zu. Auch auf die Ergebnisse von Audrücken wird auf die selbe Weise zugegriffen. Man verwendet sie einfach da wo man sie braucht, beispielsweise bei einer Variablenzuweisung

    $row = fetch();
      $var = 1 + 1;

    oder als Bedingung des if-Konstrukts.

    if (fetch())
      if (1 == 1)

    Lo!

    1. Es will einfach nicht funktionieren.

      Mein Insert sieht wie folgt aus:

      //for... {  
      //...  
      $result = mysql_query("INSERT INTO db1.t1 (Datum, Uhrzeit, Standort) VALUES ('$datum', '$zeit', '$standort', '$server')");  
        
      if (!$result) {  
         die('><b>Error: </b>' . mysql_error().'<br \>');  
      } else {  
      $anzahl_erfolgreich++;  
      }  
      //}  
        
      echo $anzahl_erfolgreich." Datensätze eingefügt";
      

      Das mit dem Abbruch bei einem ungültigen Datensatz funktioniert, aber anscheinend wird nichts hochgezählt...

      1. Hi!

        Das mit dem Abbruch bei einem ungültigen Datensatz funktioniert, aber anscheinend wird nichts hochgezählt...

        Dann kommt nun das Debugging ins Spiel (eine ätzende Tätigkeit, aber Programmieren ist nicht nur Kür). Gib dir von den strategisch wichtigen Variablen die Inhalte aus, und zwar an den Stellen, an denen sie von Bedeutung sind, also vor und nach einer Änderung und vor einem Zugriff. Verwende dazu var_dump(), das ist am genauesten. Stell außerdem das error_reporting auf E_ALL (und display_errors auf on), damit du Meldungen bekommst, wenn PHP dich über Zugriffe auf nicht Vorhandenes hinweisen möchte.

        Lo!

        1. Hi,

          Dann kommt nun das Debugging ins Spiel (eine ätzende Tätigkeit, aber Programmieren ist nicht nur Kür).

          Wieso ätzend?
          Fehlersuche gibt gerade Anfängern die Möglichkeit, mehr über die Sprache zu erfahren - und dabei wiederum ihre Debug-Strategie zu verbessern.

          Und auch als Fortgeschrittener möchte ich diesen Teil der Programmiertätigkeit nicht missen.
          Einer sich hartnäckig versteckt haltenden Fehlerursache letztendlich doch auf die Schliche gekommen zu sein, ist auch einer der Motivationsfaktoren, die man ab und zu mal braucht.

          MfG ChrisB

          --
          “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
          1. Hi!

            Dann kommt nun das Debugging ins Spiel (eine ätzende Tätigkeit, aber Programmieren ist nicht nur Kür).
            Wieso ätzend?

            Weil es Zeit verbraucht. Man will doch eigentlich nur was Programmieren und kommt nicht vorwärts, weil einen so ein blöder Fehler aushält. Das ist erst einmal demotivierend. Man muss noch zusätzliche Anstrengungen unternehmen um auch noch damit fertigzuwerden.

            Einer sich hartnäckig versteckt haltenden Fehlerursache letztendlich doch auf die Schliche gekommen zu sein, ist auch einer der Motivationsfaktoren, die man ab und zu mal braucht.

            Das Erfolgserlebnis hinterher ist schon nicht zu verachten, aber meine Theorie: Je erfahrener wird, desto mehr steigt die Verschlagenheit der Fehler und der Aufwand sie zu finden.

            Lo!

            1. Hi,

              Wieso ätzend?

              Weil es Zeit verbraucht. Man will doch eigentlich nur was Programmieren und kommt nicht vorwärts, weil einen so ein blöder Fehler aushält. Das ist erst einmal demotivierend. Man muss noch zusätzliche Anstrengungen unternehmen um auch noch damit fertigzuwerden.

              Ja - aber die werden sich in der Zukunft bezahlt machen.

              Klar ist der kaputte Reifen erst mal ärgerlich, ihn irgendwo am Rand der Autobahn wechseln zu müssen ätzend.

              Aber er führt dazu, dass man sich um Profiltiefe, Reifendruck und ähnliches demnächst schon im Vorfeld entsprechend Gedanken macht. (Machen *kann*.)

              Das Erfolgserlebnis hinterher ist schon nicht zu verachten, aber meine Theorie: Je erfahrener wird, desto mehr steigt die Verschlagenheit der Fehler und der Aufwand sie zu finden.

              Alles andere wäre ja auch tödlich langweilig :-)

              Aber dadurch lernt auch der „Profi” eben immer wieder noch etwas mehr über das System, mit dem er arbeitet.

              MfG ChrisB

              --
              “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
            2. hallo,

              Das Erfolgserlebnis hinterher ist schon nicht zu verachten, aber meine Theorie: Je erfahrener wird, desto mehr steigt die Verschlagenheit der Fehler und der Aufwand sie zu finden.

              gerade dann, wenn man schon erfahren ist, sind "Mini-Fehler" wie ein fehlender Punkt schon etwas ärgerlich.

              grüße,
              henman

              --
              "Sir! We are surrounded!" - "Excellent! We can attack in any direction!"