Nur der erste Buchstabe eines Arrays wird ausgegeben

  • Themenstarter Themenstarter C4D_Joe
  • Beginndatum Beginndatum
C

C4D_Joe

Hallo! Mit der FoSuFu habe ich zwar zwei Themen mit dem gleichen Problem gefunden, aber dort kam es zu keiner Lösung. Ich will hoffen, dass es hier anders läuft ;)
Ich will in einem Dropdownmenü eine Liste von Schriftarten ausgeben lassen, welche aus einem Array ausgelesen wird.
Das Problem: Nur der erste Buchstabe der jeweiligen Schriftart wird angezeigt.
Der Code:
PHP:
<select name="schrift" size="">
<?
$schrift[0] = "Verdana";
$schrift[1] = "Arial";
$schrift[2] = "Times New Roman";
$schrift[3] = "Comic Sans MS";
$schrift[4] = "Georgia";
for ($n=0; $n<=4; $n++)
{
echo("<option value='$schrift[$n]' style='font-family:$schrift[$n];'>$schrift[$n]</option>");
}
?>
</select>

Keine Ahnung worans liegt…

Vielen Dank schonmal,
Joe
 
Ich habe den Codeschnipsel gerade in eine andere, "jungfräuliche" Datei geladen - und da ging es auch :confused:
Dann wird es wohl irgendwie an der Datei liegen, in der die Liste eingebettet ist... Das wird eine Heidenarbeit zu suchen :rolleyes:

Wenn jemand ahnt, woran das liegen könnte - Bitte schreiben!

Gruß und Danke sehr, Joe

//edit: Hurraaa, ich habs hingekriegt! Es lag am Namen der Variablen. Hab zwar keinerlei Ahnung, weshalb da keine Fehlermeldung o.Ä. sondern nur der erste Buchstabe erschien, aber hauptsache es geht jetzt! ;)
 
Zuletzt bearbeitet von einem Moderator:
Für Arraydurchläufe sollte man eigentlich [phpf]foreach[/phpf] verwenden:
PHP:
<select name="schrift">
<?php
$schriften = array('Verdana', 'Arial', 'Times New Roman', 'Comic Sans MS', 'Georgia');
foreach ($schriften as $schrift) {
	echo "<option value=\"$schrift\" style=\"font-family:$schrift;\">$schrift</option>";
}
?>
</select>
 
Danke!
Ist ja wirklich geeigneter und erspart auch ein bisschen Scheibarbeit ;)

Gruß, Joe
 
Das Problem hatte ich letztens auch und habe lange gebraucht, wo der Fehler war.

Ich habe hier nur lokal auf einem kleinen WAMPP experimentiert (daher keine vernünftigen ini einstellungen) und hatte ein $_POST Arrayelement, welches den gleichen Namen wir eine Variable hatte.
Um das mal zu verdeutlichen:

$_POST['lang'] und $lang

Es kamen sehr lustige Sachen dabei raus, wie zum Beispiel ein durch die Wohnung fliegender Schlappen mit einem schönen Abdruck an der Wand, vor lauter Wut :)

Nur so als Info, in welche Richtung du suchen könntest (dem Fehler, nicht den Schlappen).
Gruss
 
Zurück