Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

Probleme beim Auslesen aus Datenbank





Frage

Hallo! Ich habe ein kleines Problem beim Auslesen von Daten aus einer Datenbank. Ich möchte das wenn z.B.am 20.06.05 fünf Termine eingetragen sind quasi in der ersten Zeile das Datum steht und ab der zweiten alle Termine zu dem entsprechendem Datum. Bis jetzt sieht das Ergebnis noch folgendermaßen aus: 2005-05-10 20:00:00 Grundschule Testtermin 20:00:00 Grundschule Testtermin 20:00:00 Grundschule Testtermin 2005-05-10 20:00:00 Spielstube Klassentreffen 20:00:00 Spielstube Klassentreffen 20:00:00 Spielstube Klassentreffen Könnt ihr mir sagen wie ich ereichen kann dass das Datum und die Termine jeweils nur 1x angezeigt werden??? Für eure Hilfe wäre ich euch echt dankbar. <?php if ($t_id >= 0) { $ergebnis = mysql_query("SELECT * FROM termine ORDER BY Datum desc"); for ($n=0;$n<mysql_num_rows($ergebnis);$n++) { $result = mysql_fetch_object($ergebnis); echo "<tr>"; echo"<td>".$result->Datum."</td>"; echo "<td> </td>"; echo "<td> </td>"; echo "<td> </td>"; echo "</tr>"; /* $ergebnis2 = mysql_query("SELECT * FROM termine WHERE Datum=´.$result->Datum.´ ORDER BY Uhrzeit"); for ($n2=0;$n2<mysql_num_rows($ergebnis2);$n2++) { $result2 = mysql_fetch_object($ergebnis2); //$bgcolor2 = ($bgcolor2==´#CCCCCC´) ? (´#FFFFFF´) : (´#CCCCCC´); echo ´<tr bgcolor="´, $bgcolor2, ´">´; echo "<td> </td>"; echo "<td>".$result->Uhrzeit."</td>"; echo "<td>".$result->Einrichtung."</td>"; echo "<td>".$result->Beschreibung."</td>"; echo "</tr>"; } */ ?>

Antwort 1 von Nessus

Hi,

da hilft ein distinct weiter.

http://www.projektvermittler.de/artikel283.html

Nessus

Antwort 2 von Dr.Oetker

Abend!
Danke für deine schnelle Hilfe! Leider bin ich als blutiger Anfänger nicht wirklich weit gekommen. Zwar werden in der jeweils ersten Zeile keine doppelten Einträge mehr angezeigt, dafür werden die Termine zu dem jeweiligen Datum nicht mehr angezeigt. Kannst du mir sagen weshalb?
Die Ausgabe:

2006-06-01








2005-05-10




2005-05-05


2005-04-06


2004-12-03


0000-00-00




Quellcode:
<?php
if ($t_id >= 0)
{
//$ergebnis = mysql_query("SELECT * FROM termine ORDER BY Datum desc");
$ergebnis3 = mysql_query("SELECT DISTINCT Datum FROM termine ORDER BY Datum desc");

for ($n=0;$n<mysql_num_rows($ergebnis3);$n++)
{
$result = mysql_fetch_object($ergebnis3);
echo "<tr>";
echo"<td>".$result->Datum."</td>";
echo "<td> </td>";
echo "<td> </td>";
echo "<td> </td>";
echo "</tr>";

$ergebnis2 = mysql_query("SELECT * FROM termine WHERE Datum=´.$result->Datum.´ ORDER BY Uhrzeit");
for ($n2=0;$n2<mysql_num_rows($ergebnis2);$n2++)
{
$result2 = mysql_fetch_object($ergebnis2);
//$bgcolor2 = ($bgcolor2==´#CCCCCC´) ? (´#FFFFFF´) : (´#CCCCCC´);
echo ´<tr bgcolor="´, $bgcolor2, ´">´;
echo "<td> </td>";
echo "<td>".$result->Uhrzeit."</td>";
echo "<td>".$result->Einrichtung."</td>";
echo "<td>".$result->Beschreibung."</td>";
echo "</tr>";
}

?>
<tr>
<td style="line-height:15px;"> </td>
</tr>
<?php

}
}
else
{
echo"<tr><td> </td></tr>";
}
?>

Antwort 3 von Nessus

Hi,

den Distinct solltest Du in die 2te Abfrage setzen.

Nessus

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: