Muss ich $nickname noch als Array definieren bevor ich es zum Array mache (durch mysql_fetch_assoc?
...
geh ich mal davon aus, dass du folgendes meinst:
statt
folgendes:
Zunächst einmal musst du $nickname nicht extra als Array definieren. Die Verwendung von mysql_fetch_assoc sorgt ja bereits dafür, dass $nickname als Array behandelt wird.
Wenn du $nickname vorher schon als Array definierst, hast du nach dem Aufruf von mysql_fetch_assoc ein Array im Array. Während also $nickname = mysql_fetch_assoc ausgeben würde: Array([ID] => xy [blub] =>) usw. würdest du bei $nickname[] = mysql_fetch_assoc Array([0] => Array([ID] => xy [blub] =>)) erhalten. Beim durchlaufen des Arrays für die weitere Verarbeitung würde das einen Unterschied machen in Bezug auf den Zugriff auf die einzelnen Array-Elemente.
Was du natürlich machen könntest: vor $nickname[] = mysql_fetch_assoc(...) folgendes zusetzen: Allerding hab ich noch nirgendwo gesehen, dass das so gemacht wird. Zumal ja wie gesagt durch die Funktion mysql_fetch_assoc $nickname als Array definiert wird.