Array

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Array

    Ich will aus einer Datenbank Daten auslesen und will überprüfen, ob ein bestimmter Wert darin enthalten ist. Das geht ja so:

    PHP Code:
    <?
    $rows = array("Tarlar", "Erebus", "emmy");

    $nickname = "Talar";

    foreach ($rows as $nick)
        {
        echo $nick;
        }

    if (in_array("$nickname",$rows))
        {
        echo "gefunden";
        }
    else
        {
        echo "nicht gefunden";
        }
    ?>
    Jetzt hab ich das mit der Datenbank gemacht:

    PHP Code:
    <?
    $nickname = "Tarlar";

    $result = mysql_query("SELECT nickname FROM ta_spielerbilanzen");

    $rows = array();

    while ($row = mysql_fetch_assoc($result))
        {
        $rows[] = $row;
        }

    foreach($rows as $diese_zeile)
        {
        echo $diese_zeile[nickname];
        echo "<br>";
        }

    if(in_array("$nickname",$rows))
        {
        echo "gefunden";
        }
    else
        {
        echo "nicht gefunden";
        }
    ?>
    Aber auch wenn der Wert der in $nickname gespeichert ist, in der DAtenbank vorkommt, wird nichts ausgegeben. Also Überprüfung, dass die Daten ausgelesen werden, hab ich sie ausgeben lassen. Das funktioniert auch. Was mache ich noch falsch?
    Last edited by Tarlar; 20-02-2005, 11:23.

  • #2
    Schreib doch mal das hier ans Ende von deinem Datenbank-Script:
    PHP Code:
    <pre>
    <?php
    print_r
    ( array("Tarlar""Erebus""emmy") );
    echo 
    '<br /><br />';
    print_r$rows );
    ?>
    </pre>
    Und dann guck mal, ob dir der Unterschied auffällt!
    hopka.net!

    Comment


    • #3
      Array ( [0] => Tarlar [1] => Erebus [2] => emmy )

      Array ( [0] => Array ( [nickname] => Erebus ) [1] => Array ( [nickname] => Tarlar ) [2] => Array ( [nickname] => emmy ) )

      Das hier wird ausgegeben, nur ich weiß nicht, was mir das sagen soll. Bin in PHP noch nicht so bewandert.

      Comment


      • #4
        Ganz einfach: Das erste ist ein Array, in dem die 3 Namen sind, und das zweite ist ein Array, in dem 3 Arrays sind, in denen jeweils 1 Name ist.

        Du musst jetzt noch mal genau deinen Code ansehen, und du wirst feststellen, dass das was du dir mit echo an der einen Stelle ausgeben lässt etwas anderes ist, als das was du in dein Array $rows speicherst.
        hopka.net!

        Comment

        Working...
        X