WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik


Homepage und Webhosting-Forum

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.


Forum » PHP & MySQL » while wird nur 1 mal ausgeführt » Antworten
Benutzername:
Passwort: Passwort vergessen?
Inhalt der Nachricht: Fett | Kursiv | Unterstrichen | Link | Bild | Smiley | Zitat | Zentriert | Quellcode| Kleiner Text
Optionen: Emailbenachrichtigung bei Antworten
 

Die letzten 5 Postings in diesem Thema » Alle anzeigen
von beule
danke für die hilfe hab es jetzt mit mysql_fetch:object gelöst, das problem war das ich die variable $porto zwei mal gebraucht habe und somit immer wieder überschrieben habe =P
von chip
subjective schrieb am 31.05.2005 15:50
Statt mysql_fetch_array sollte man direkt mysql_fetch_assoc nutzen, da so nicht alle Felder doppelt im Ergebnis-Array landen.


Jep, danke für die Verbesserung. subjective hat eindeutig recht.
von subjective
Statt mysql_fetch_array sollte man direkt mysql_fetch_assoc nutzen, da so nicht alle Felder doppelt im Ergebnis-Array landen.
von chip
Hi,

probiers mal so:

1: 
2: 
3: 
4: 
5: 
6: 
7:
<select name="Porto" class="Auswahl">
      <?  while($row = mysql_fetch_array($porto)) { 
		if($row['id'] == $lan_porto){echo"<option value=".$row['id']." name=".$row['text']." selected > ".$text." ".$porto."</option>";}
		else{echo"<option value=".$row['id']." name=".$row['text'].">".$row['text']." ".$row['porto']."</option>";}
	  }		
	?>
     </select>


Wenn die Variablen Namen haben sollen, kannst du dir das list() sparen und stattdessen ein assoziatives Array nehmen. Dann kannst du auf die Spalten mit den Array-Indizes zugreifen.
von beule
hey all

also mein problem ist dass meine while schleiffe nur 1 mal ausgeführt wirt.
1:
	$porto = mysql_query("SELECT * FROM portoklasse");

hier lese ich die daten aus der db... mit mysql_num_row gibt er dann, dass es 3 datensätze sind. sind es auch. soweit alles gut.
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8:
<select name="Porto" class="Auswahl">
      <?  while(list($id, $porto, $text) = mysql_fetch_row($porto)){ 
		if($id == "$lan_porto"){echo"<option value='$id' name='$text' selected > $text $porto </option>";}
		else{echo"<option value='$id' name='$text' >$text $porto</option>";}
	  }		
	?>
     </select>


hier gibt er jetzt aber nur den ersten datensatz aus der db an, anstelle von allen dreien. ich habe absolut keinen plan wieso, vorallem da es bei anderen dropdown feldern funktioniert hat, genau das der gleiche code.
.
hat jeman ne idee was ich hier falsch gemacht habe?
danke
beule

Nach oben