Moin.
Es geht um einen Kalender. Nein, nicht gleich wieder wegklicken. Bitte. Es soll immer ein bestimmter Monat als HTML-Tabelle angezeigt werden und dabei soll jeder Tag, zu dem ein Ereignis in der DB vorliegt, als Link generiert werden. Das habe ich soweit alles hinbekommen - sofern entweder ein oder kein Ereignis vorhanden ist. Sobald mehr als ein Ereignis vorhanden ist, hat er mir zuvor (while falsch eingesetzt vermute ich) immer so oft, wie Einträge vorhanden waren, die HTML-Tabelle "vermehrt". Das habe ich nun soweit abgeschaltet. Dafür zeigt er mir allerdings auch bei mehreren Einträgen nur einen Link an. Hier einmal eine vereinfachte Form ohne Tabellen und den ganzen Rest:
$dynmon wird normalerweise dynamisch ermittelt.
In diesem Fall ($dynmon = 3) liegen zwei Ereignisse vor, aber nur eines wird als Link angezeigt, das andere wird ignoriert. Hier rutscht er in das else. Wieso? Ich sage doch, dass er 30-mal schauen soll, ob $i einem Eintrag aus der DB entspricht. Oder?
Es geht um einen Kalender. Nein, nicht gleich wieder wegklicken. Bitte. Es soll immer ein bestimmter Monat als HTML-Tabelle angezeigt werden und dabei soll jeder Tag, zu dem ein Ereignis in der DB vorliegt, als Link generiert werden. Das habe ich soweit alles hinbekommen - sofern entweder ein oder kein Ereignis vorhanden ist. Sobald mehr als ein Ereignis vorhanden ist, hat er mir zuvor (while falsch eingesetzt vermute ich) immer so oft, wie Einträge vorhanden waren, die HTML-Tabelle "vermehrt". Das habe ich nun soweit abgeschaltet. Dafür zeigt er mir allerdings auch bei mehreren Einträgen nur einen Link an. Hier einmal eine vereinfachte Form ohne Tabellen und den ganzen Rest:
PHP-Code:
<?php
$dynmon = "3";
//SQL
include ('mySQL.inc.php');
$conn = mysql_connect($db_server,$db_user,$db_passwort) or die (mysql_error());
$link = mysql_select_db($db_name, $conn) or die (mysql_error());
$sqlab = "select tag from kalender where monat = '$dynmon'";
$res = mysql_db_query($db_name, $sqlab);
// SQL-Ende
$row = mysql_fetch_array($res);
for ($i=1; $i<=30; $i++){
if($i==$row['tag']){
echo "<a href=\"foobar\">".$i."</a><br>";
} else {
echo "Normaler Tag $i<br>";
}
}
?>
In diesem Fall ($dynmon = 3) liegen zwei Ereignisse vor, aber nur eines wird als Link angezeigt, das andere wird ignoriert. Hier rutscht er in das else. Wieso? Ich sage doch, dass er 30-mal schauen soll, ob $i einem Eintrag aus der DB entspricht. Oder?
Kommentar