Hallo zusammen,
ich wollte mal fragen ob mir jemand weiterhelfen kann...
Ich habe mich durch das Formular gearbeitet und alles hinbekommen, aber jetzt komme ich nicht mehr weiter:
Ich bekomme im Sucheformular nach Abfrage zu einem bestimmten Datum beispielsweise 5 Treffer.
Die Seiteneinstellung ist probeweise auf 2 Treffer pro Seite eingestellt.
Erstmal funktioniert alles wie es soll.
Es kommt die Info "5 Treffer" und die ersten zwei Treffer werden angezeigt.
Gehe ich dann auf die nächste Seite sind keine Treffer mehr vorhanden und es kommt die Fehlermeldung:
Notice: Undefined index: y in /mnt/webf/d2/81/53114281/htdocs/test.blabla.php on line 285
Notice: Undefined index: m in /mnt/webf/d2/81/53114281/htdocs/test.blabla.php on line 285
Notice: Undefined index: d in /mnt/webf/d2/81/53114281/htdocs/test.blabla.php on line 285
(Im Code habe ich die betreffende Zeile mit Sternchen markiert ).
Ich weiß einfach nicht was ich ändern soll, habe schon etliches versucht.
Es wäre auch ganz toll das Datum im Format Tag.Monat.Jahr auszugeben.
Habe mich da ebenfalls Tage durch SQL gelesen, hat aber bisher nicht geklappt.
Wichtig ist jedoch der erste Teil wegen den Fehlermeldungen.
Danke schon mal im Voraus und viele Grüße, Nobbi.
<?php
$daten_pro_seite = 2; // Zum testen auf 2 gesetzt
if (isset($_GET['submit'])) {
include "include.php"; // Verbindung zur DB
$_GET = array_map("mysql_real_escape_string", $_GET);
$startort = $_GET['startort'] == "alle_staedte" ? "" : " AND startort LIKE '%" . $_GET['startort'] . "%' ";
$zielort = $_GET['zielort'] == "alle_staedte" ? "" : " AND zielort LIKE '%" . $_GET['zielort'] . "%' ";
// Query-String
$sql = "SELECT datum, startort, zielort, benutzername FROM `" . $TBL_NAME3 . "`
******** WHERE (datum LIKE '%" . $_GET['y']."-".$_GET['m']."-".$_GET['d'] . "%'" . $startort . $zielort . ") "; ***********
$menge = mysql_num_rows(mysql_query($sql));
$aktuelle_seite = isset($_GET['seite']) ? $_GET['seite'] : 1;
$start = $aktuelle_seite * $daten_pro_seite - $daten_pro_seite;
$eintraege = mysql_query($sql . " LIMIT " . $start . ", " . $daten_pro_seite);
if (mysql_num_rows($eintraege) > 0) {
echo '<p>Es ' . ($menge == 1 ? 'wurde 1 Eintrag' : 'wurden ' . $menge . ' Einträge') . ' zum Datum „' . $_GET['y']."-".$_GET['m']."-".$_GET['d'] . '” gefunden.</p>';
echo '<p><h6> Seite: </h6> ';
$zaehler = 1;
for ($anzahl = 0; $anzahl < $menge; $anzahl = $anzahl + $daten_pro_seite) {
echo ($zaehler == $aktuelle_seite ? ' <h6>' . $zaehler . '</h6> ' :
' <a class="textlink33" href="?seite=' . $zaehler . '&datum=' . $_GET['y']."-".$_GET['m']."-".$_GET['d'] . '&startort=' . $_GET['startort'] . '&zielort=' . $_GET['zielort'] . '&submit">' . $zaehler . '</a> ');
$zaehler++;
}
echo '</p>';
echo '<div id="kopf">
<style type="text/css">
#kopf {background-color:#429404;}
</style>
<table rules="cols">
<tr>
<th style="width:92px;">Datum</th>
<th style="width:142px;">Startort</th>
<th style="width:146px;">Zielort</th>
<th style="width:142px;">Mitglied</th>
</tr>
</table></div><br>';
// Einträge ausgeben
while (list ($datum, $startort, $zielort, $benutzername) = mysql_fetch_row($eintraege)) {
echo '<div id="ergebnis">
<style type="text/css">
#ergebnis {background-color:#88DD37;}
</style>
<table style="width:910px;" table rules="cols">
<tr>
<td style="width:100px;"> ' . $datum . ' </td>
<td style="width:140px;"> ' . $startort . ' </td>
<td style="width:140px;"> ' . $zielort . ' </td>
<td style="width:140px;"> ' . $benutzername . ' </td>
</tr></table></div><br>';
}
echo '</table><br>';
}
else {
echo '<p>Es wurden keine passenden Einträge gefunden!</p>';
}
}
?>
Alles anzeigen