Ankündigung

Einklappen
Keine Ankündigung bisher.

Ausgabe des Array-Inhalt's funktioniert nicht

Einklappen

Neue Werbung 2019

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

  • Ausgabe des Array-Inhalt's funktioniert nicht

    PHP-Code:
      $pir_config1_1_5 $dbConfig->query('SELECT * FROM BoolSensorsSummer WHERE Sensor="PIR1 1-5"');
      while(
    $row=$pir_config1_1_5->fetchArray(SQLITE3_ASSOC))
      {
        
    $pir_config[]=$row;
      }
      
    print_r($pir_config);

        for (
    $x 0$x <= 23$x++) {
        echo 
    '<td><font color="blue">'.$pir_config["h."$x]."</font></td>"
    Hier erhalte ich bei der Ausgabe folgende Fehlermeldungen:
    Array ( [0] => Array ( [LineNr] => 1 [Sensor] => PIR1 1-5 [h0] => 1 [h1] => 2 [h2] => 3 [h3] => 4 [h4] => 5 [h5] => 6 [h6] => 8 [h7] => 8 [h8] => 9 [h9] => 10 [h10] => 11 [h11] => 12 [h12] => 13 [h13] => 14 [h14] => 15 [h15] => 16 [h16] => 17 [h17] => 18 [h18] => 19 [h19] => 20 [h20] => 21 [h21] => 22 [h22] => 23 [h23] => 24 ) )
    Notice: Undefined index: h0 ...h1 ....h2

  • #2
    Dein Array $pir_config enthält wiederum ein Array

    Mit
    PHP-Code:
    echo "<pre>";
    print_r($pir_config);
    echo 
    "</pre>"
    würdest du das auch sehen.
    Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

    Kommentar


    • #3
      Danke! Und was kann ich dagegen tun?

      Kommentar


      • #4
        SELECT * solltest du niemals schreiben, sondern alle Spalten aufführen, die du auch ausgeben willst.
        Ich glaube das hat mir dir aber schon mal gesagt.

        Das Font Element ist schon seit Jahren veraltet, nimm CSS stattdessen.

        Validiere deine ausgegebenes HTML, da sind sicher noch mehr Fehler drin.

        Lerne auch erst mal mit HTML richtig umzugehen, sonst wirst du immer wieder Probleme haben.

        Kommentar


        • #5
          Ich will mehr als 24 Spalten auslesen, darum dachte ich die komplette 1.Zeile mit Select auszulesen wäre ganz geschickt.

          Außerdem habe ich folgendes im Internet gefunden, dass offensichtlich auch funktioniert (ich weiß nicht warum ich ein Array im Array habe)

          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          12
          13
          14
          <?php
          $db=newSQLite3("aufzeichnungen.db");
          $res=$db->query("select * from werte");
          while($dsatz=$res->fetchArray(SQLITE3_ASSOC))
          {
          echo$dsatz["datum"];
          echo" ";
          echo$dsatz["uhrzeit"];
          echo" ";
          echo$dsatz["temperatur"];
          echo"<br>";
          }
          $db->close();
          ?>

          Kommentar


          • #6
            Zitat von sunshineh Beitrag anzeigen
            (ich weiß nicht warum ich ein Array im Array habe)
            Weil du es so programmiert hast.

            Kommentar


            • #7
              Zitat von sunshineh Beitrag anzeigen
              ich weiß nicht warum ich ein Array im Array habe)
              Gemäß deinem ersten Post liefert dir die DB-Abfrage Arrays zurück, die du dann in einan anderen Array namens $pir_config schiebst .

              Kommentar


              • #8
                PHP-Code:
                 $pir_config[]=$row
                Weil $row schon ein Array ist, welches du dann in ein Feld eines Array überträgst.
                Mache doch mal ein var_dump auf $row dann siehst du es.

                Nennt sich debuggen und ist Bestandteil der Programmierung.

                Ich will mehr als 24 Spalten auslesen, darum dachte ich die komplette 1.Zeile mit Select auszulesen wäre ganz geschickt.
                Ist Faulheit, die sich früher oder später rächt.

                Gemeint ist der Stern dahinter nicht das SELECT Schlüsselwort.

                Kommentar

                Lädt...
                X