Spalteninhalte in Array schreiben

thomsonz

Mitglied
Hallo liebe PHP-Freunde,
da ich bisher kaum mit Arrays gearbeitet habe, komme ich bei der Lösung meines Problems nicht weiter.
Ich möchte aus einer Tabelle eine bestimmte Spalte auslesen. Laut SQL Abfrage werden mehrere Datensätze gefunden. Aus der Spalte Name möchte ich die Daten in ein Array schreiben der Form array("Name1", "Name2", "Name3" ). Die Abfrage wird mit einer while-Schleife durchgeführt. Dabei kann es vorkommen dass einige Namen doppelt vorkommen also so: array("Name1", "Name2", "Name3", "Name2", "Name1"). Ich möchte dann mit array_unique() doppelte Ergebnisse aussortieren. Leider bekomme ich es nicht hin die Daten in ein einziges Array zu schreiben, sondern immer nur in der Form array("Name1"), array("Name2"), array("Name3"). Kann mir jemand von Euch helfen mein Problem zu lösen?
Vielen Dank
Hier mein bisheriger Code:
PHP:
$one = "SELECT * FROM reiseplaner WHERE user_id ='X' ORDER BY id";
$two = mysql_query($one) or die(mysql_error());
if (mysql_num_rows($two) != "0")
	{
		while ($zeile = mysql_fetch_assoc($two)) 
		{
		$arr = '"'.$zeile['von'].'", ';
	
		$array = array($arr);
		$result = array_unique($array);
		print_r($result);
          }
}
 
PHP:
$one = "SELECT von FROM reiseplaner WHERE user_id ='X' ORDER BY id";
$two = mysql_query($one) or die(mysql_error());
if (mysql_num_rows($two) > 0)
    {
        $arr = array(); // Initialisieren des Arrays
        while ($zeile = mysql_fetch_assoc($two)) 
        {
        $arr[] = $zeile['von']; // Während die Schleife durchlaufen wird, werden alle kommenden Werte einfach als Array-Wert hinten drangehängt ;)
   
          }

$result = array_unique($array); // Wenn alle Werte eingetragen wurden, dann werden doppelte werte gelöscht.
        print_r($result); // ;)
}
 
Leider bekomme ich damit folgende Fehlerwarnung: Warning: array_unique() [function.array-unique]: The argument should be an array in /home/www/html/vorlage.php on line 18
Danke schön
 
Falls du nicht alle Datensätze benötigst, kannst du das Ergebnis auch direkt gruppieren:
Code:
SELECT von FROM reiseplaner WHERE user_id ='X' GROUP BY von ORDER BY id
 
ja danke Gumbo das mache ich zum Schluß ich weiß noch nicht genau was ich alles brauche daher der *
p.s.: viele grüsse aus dresden nach dresden ;-)
 
Zurück