Probleme mit einer While-Schleife

KILLSMAKER

Erfahrenes Mitglied
Hallo!
Ich arbeite erst seit kurzem mit PHP und habe daher noch Probleme mit einfachen Sachen, wie in diesem Fall einer While-Schleife

Mein index.php soll mir meine News aus der Datenbank auslesen und anzeigen.
Dafür habe ich folgenden Code

PHP:
<? include("../#mysql.inc"); ?>
<html>
<head>
<title>newsticker</title>
</head>
<body bgcolor="000000" leftmargin="0" topmargin="0" marginwidth="0" marginhight="0">

<table align="left" border="0" cellspacing="0" cellpadding="0" >
	<tr><td width="5" height="5"></td></tr>
	<tr><td>
	<table align="left" border="0" cellspacing="0" cellpadding="0" background="/bilder/inhalt_home.gif">
		<tr><td width="710" height="430" valign="top">
		<table align="left" border="0" cellspacing="0" cellpadding="0" >
			<tr><td width="710" height="1"></td></tr>
			<tr><td>
				<div style="height:428; width:710px;overflow:auto">
				<?
					$sql=mysql_query("SELECT * FROM news ORDER BY id");
					while($ds=mysql_fetch_object($sql))
					{
						echo " .";
				?>

		<table align="left" border="0" cellspacing="0" cellpadding="0">
			<tr><td width="30" height="0"></td><td></td></tr>
			<tr><td></td><td>
			<table align="left" border="0" cellspacing="0" cellpadding="0" background="/bilder/inhalt_news_top.gif">
				<tr><td width="679" height="50" valign="top">
				<table align="left" border="0" cellspacing="0" cellpadding="0">
					<tr><td width="30" height="15"></td><td width="522"></td><td></td></tr>
					<tr><td></td><td><font color="white"><b><?= $ds->headline; ?></b></font></td><td><font color="white"><b><?= substr($ds->date,0,10); ?></b></font></td></tr>
					
				</table>
				</td></tr>
			</table>
			</td></tr>
			<tr><td></td><td>
			<table align="left" border="0" cellspacing="0" cellpadding="0">
				<tr><td width="30"></td><td width="602"><font color="white"><p align="justify"><?= $ds->text; ?></p></font>
				</td></tr></table>
			</td></tr>
			<tr><td>
			</td><td >
			<table align="left" border="0" cellspacing="0" cellpadding="0" background="/bilder/inhalt_news_bottom.gif">
				<tr><td width="679" height="34" valign="top">
				<table align="left" border="0" cellspacing="0" cellpadding="0">
					<tr><td width="592" height="0"></td><td></td></tr>
					<tr><td></td><td><font color="white">Quelle</font></td></tr>
				</table>
				</td></tr>
			</table>
		</table>
	
				<?
					}
				?>
				</div></td></tr>
			</td></tr>
		</table>
	</td></tr>
</table>

<? mysql_close($dz); ?>
</body>
</html>

Nun habe ich allerdings folgendes Problem: Es werden mir nur alle News angezeigt wenn
wenn ich die Zeile 21( echo " ."; ) mit einbinde. Wenn ich dies nicht tue wird mir nur die letzte News angezeigt. Weiß jemand wodran das liegen könnte?

mfg killsmaker
 
Ich kann an der While-Schleife keinen Fehler entdecken. Sicher, dass es ein PHP Problem ist und keins HTML?
 
Könnte denn eine Fehlerquelle sein, dass ich vllt. irgendwo eine Zeile/Spalte/Tabelle nicht geschlossen habe?

mfg killsmaker

PS: Ich guck nocmals alles durch
 
Jetzt wo du es sagt. Ich glaube da fehlt ein End-tag für eine Tabelle

HTML:
<tr><td width="710" height="430" valign="top">
        <table align="left" border="0" cellspacing="0" cellpadding="0" >
            <tr><td width="710" height="1"></td></tr>
            <tr><td>
                <div style="height:428; width:710px;overflow:auto">

Ich glaube, die wird nicht geschlossen. Bzw die davor
 
Ja, Danke für deine Hilfe.

Die Lösung: Ich hatte für jede News ne neue Tabelle angelegt, aber so wird sie natürlich neben der alten angezeigt. Ich brauchte nur ändern, dass keine neue Tabelle sondern eine neue Zeile erzeugt, damit die neue News unter der alten erscheint

plz [CLOSED]

mfg killsmaker

PS: Ja man hätte drauf kommen können, wenn man nicht die horizontale Scrollbar übersehen hätte:) . Aber trotzdem danke
 

Neue Beiträge

Zurück