Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2003 Teil von Mai

SELFHTML Forumsarchiv
Leeres Array

Informationsseite
  1. Seite (PHP) Leeres Array von Lynky, 31. 05. 2003, 17:25
nach unten

Leeres Array

Die folgende Nachricht zum Thema stammt von: Lynky, 31. 05. 2003, 17:25

Frohen Samstag erstmal :)

Habe in meiner Suchroutine eine Query und lese die Werte mit "mysql_fetch_assoc" in ein Array ein. Leider kann ich die darin enthaltenen Spalten später nicht über den Index (Key) ansprechen.
Was habe ich falsch gemacht? Bzw. wie kann ich den Code ändern, daß ich später über den Index auf die rows zugreifen kann?


<?

  ...

      While ($AlleDtNamen_array = mysql_fetch_assoc($res_DtNamen))
        {

          For ($i2 = 0; $i2 < $AnzSuchStr; $i2++)     // Suchen...
            {
              $Wert     = StrToUpper($AlleDtNamen_array["name_dt"]);
              $SuchWert = StrToUpper($SuchStrTeile[$i2]);
              $Pos = StrPos($Wert, $SuchWert);

              if (!($Pos === false))
                {
                  $hit_array["hits"][$i1] = $hit_array["hits"][$i1]+1;
                  echo "<BR>".$AlleDtNamen_array["name_dt"]." Hits: ".$hit_array["hits"][$i1];
                }  /* if-end */

            }  /* for-end */

          $i1++;

        }  /* while-end */

        $AlleDtNamen_array["name_dt"][0];

?>

Danke für jede Hilfe,
Grüsse,

Lynky

nach obennach unten

Korrektur

Die folgende Nachricht zum Thema stammt von: Lynky, 31. 05. 2003, 17:30

Sorry, letzte Zeile lautet natürlich so:

...

   echo $AlleDtNamen_array["name_dt"][0];

?>

Copy-Paste-Fehler *g*

nach obennach unten

Leeres Array

Die folgende Nachricht zum Thema stammt von: wahsaga, 31. 05. 2003, 17:41

hi,

»» Habe in meiner Suchroutine eine Query und lese die Werte mit "mysql_fetch_assoc" in ein Array ein. Leider kann ich die darin enthaltenen Spalten später nicht über den Index (Key) ansprechen.

was heisst hier "später" in diesem zusammenhang?
klappt es schon in der while-schleife nicht, oder erst nachher bei dem echo nach der while-schleife?

»» Was habe ich falsch gemacht?
ich bin mir nicht ganz sicher, aber ich denke mit
»» While ($AlleDtNamen_array = mysql_fetch_assoc($res_DtNamen))
erzeugst du eben _kein_ array, sondern belegst nur die variable $AlleDtNamen_array jedesmal _neu_ mit dem wert der aktuellen zeile aus dem mysql-ergebnis.

»» Bzw. wie kann ich den Code ändern, daß ich später über den Index auf die rows zugreifen kann?
ich denke, dazu müsstest du
»» While ($AlleDtNamen_array[] = mysql_fetch_assoc($res_DtNamen))
verwenden, damit weiss php, dass es die neuen wert jeweils als neue array-elemente hinzufügen soll.
anmerkung: ich rede hier jetzt übrigens von der ersten dimension des arrays, nicht der zweiten. die zweite wäre dann die mit den tabellen-spaltennamen als index ["name_dt"].

du müsstest dann allerdings auch das ansprechen des arrays innerhalb der while-schleife anpassen, so dass du den index der ersten dimension noch dazu nimmst.

oder aber, du speicherst das ergebnis von mysql_fetch_assoc() innerhalb der while-bedingung zunächst in einer weiteren temporären variablen,
While ($AlleDtNamen_temp = mysql_fetch_assoc($res_DtNamen))
und erzeugst innerhalb der while-schleife dann jeweils eine neue zeile deines arrays,
$AlleDtNamen_array[] = $AlleDtNamen_temp;
und alle weiteren zugriffe auf $AlleDtNamen_array _innerhalb_ der while-schleife werden durch zugriffe auf $AlleDtNamen_temp ersetzt.

_nach_ der while-schleife müsstest du dann in $AlleDtNamen_array[] ein wirkliches array zur verfügung haben.

gruss,
wahsaga

nach obennach unten

Leeres Array

Die folgende Nachricht zum Thema stammt von: Lynky, 31. 05. 2003, 17:50

*freu*

Hi,

Du hattest Recht, er hat die Variable immer wieder überschrieben mit der aktuellen Row.
Hab das Problem jetzt etwas unelegant mit einem "array_push" innerhalb der While-Schleife gelöst. Dabei habe ich ein neues Array verwendet.

Vielen Dank,

Lynky

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2003 Teil von Mai

© 1998-2006 Seite Impressum, Software: Classic Forum