Hi,
$link = connect();
if ($link)
{
$sql = "SELECT *
FROM banner"; // Sinnvollerweise sollte man hier natürlich nur die Spalten abfragen, die man wirklich braucht!$result = mysql_query($sql) or die(mysql_error()); // Hier sollte eigentlich eine vernünftige Fehlerbehandlung hin - ein die() ist keine!
if (!$result)
return(FALSE);echo "ImageArr = new Array();\n";
while ($row = mysql_fetch_assoc($result))
{
echo "ImageArr.push('" . $row['Image'] . "');\n";
}
}
>
> Der dabei erzeugte Javascript-Code muss natürlich an der richtigen Stelle ins HTML-Dokument geschrieben werden.
Ich hätte noch einen weitergehenden Vorschlag. Statt die Elemente einzeln ImageArr hinzuzufügen (btw: besser als lokale Variable, d.h. mit "var", initialisieren), würde ich den Array nicht einzeln über die push-Methode füllen, sondern einfach JSON erzeugen. Beispiel:
~~~php
$link = connect();
if ($link)
{
$sql = "SELECT *
FROM banner"; // Sinnvollerweise sollte man hier natürlich nur die Spalten abfragen, die man wirklich braucht!
$result = mysql_query($sql) or die(mysql_error()); // Hier sollte eigentlich eine vernünftige Fehlerbehandlung hin - ein die() ist keine!
if (!$result)
return(FALSE);
echo "var ImageArr = [";
$first = 1;
while ($row = mysql_fetch_assoc($result))
{
// output comma for all items after first
if ($first-- <= 0)
echo ",";
echo [link:http://www.php.net/manual/en/function.json-encode.php@title=json_encode]($row);
}
}
echo ']';
Abgesehen von meinem ästhetischem Empfinden (das generierte JS ist IMHO schöner und kompakter) hat es den Vorteil, dass man diesen Teil (ab dem generierten [ bis zum ]) auch mal herauslösen und als Webservice anbieten könnte (z.B. über AJAX, um ein einfaches Beispiel zu nennen).
Bis die Tage,
Matti