Ich möchte auf meiner Seite eine große Liste verschiedener Serien einbauen,
wobei ich die Serien alphabetisch anordnen will.
Soweit bin ich schonmal:
Anime4ever.info | Anime-Index
Allerdings habe ich bisher nur die Buchstaben A-Z untergebracht,
es gibt aber auch Serien, die mit einem Punkt, einer Zahl oder sonstwas anfangen.
Nun suche ich eine Möglichkeit, diese auch irgendwie anzeigen zu lassen.
Ich möchte all diese Serien vor [A] mit dem Link [#] (oder so ähnlich) anzeigen lassen.
Hier der Code der Paginierung:
PHP-Code:
<?php
$letters = array(0 => "a", 1 => "b", 2 => "c", 3 => "d", 4 => "e", 5 => "f", 6 => "g", 7 => "h", 8 => "i", 9 => "j", 10 => "k", 11 => "l", 12 => "m", 13 => "n", 14 => "o", 15 => "p", 16 => "q", 17 => "r", 18 => "s", 19 => "t", 20 => "u", 21 => "v", 22 => "w", 23 => "x", 24 => "y", 25 => "z");
$lettere = array(0 => 0, 1 => 0, 2 => 0, 3 => 0, 4 => 0, 5 => 0, 6 => 0, 7 => 0, 8 => 0, 9 => 0, 10 => 0, 11 => 0, 12 => 0, 13 => 0, 14 => 0, 15 => 0, 16 => 0, 17 => 0, 18 => 0, 19 => 0, 20 => 0, 21 => 0, 22 => 0, 23 => 0, 24 => 0, 25 => 0);
$sql = "SELECT " . $select . " FROM " . $tabelle . " WHERE " . $required . "!='' ORDER BY " . $select;
$sql = sql_query($sql, "anime");
$count = mysql_num_rows($sql);
while ( $row = mysql_fetch_object($sql) )
{
foreach($letters as $lettern => $letter)
{
if ( substr(strtolower($row->$select), 0, 1) == $letter)
{
$lettere[$lettern] = "1";
break;
}
}
}
?>
<p class="c">
<?php
foreach ($lettere as $lettern => $lettert)
{
if ( $lettert == "1" )
{
echo '[<a href="' . $base_url . '&&letter=' . $letters[$lettern] . '">' . strtoupper($letters[$lettern]) . '</a>] ';
}
else
{
echo "[" . strtoupper($letters[$lettern]) . "] ";
}
}
?>
</p>
<?php
if ( $_GET['letter'] == "" )
{
$letter = "a";
}
else
{
$letter = substr(strtolower($_GET['letter']), 0, 1);
}
?>
wenn nicht, wird der Eintrag erst gar nicht verlinkt.
Nun wäre das erste Problem, dass man einen "Buchstaben" hinzufügen muss,
der alles beinhaltet außer A-Z. Kann man das so formulieren? Oder muss man
alles aufzählen, was er beinhalten kann? (Wäre ziemlich umständlich...)
Dann noch die eigentliche Abfrage:
PHP-Code:
$abfrage = "SELECT * FROM " . $tabelle . " WHERE " . $select . " LIKE '" . addslashes($letter) . "%' AND " . $required . "!='' ORDER BY " . $select ;
$sql = sql_query($abfrage, "anime");
$count = mysql_num_rows(mysql_query($abfrage));
if ( $count != "0" )
{
...
}
Kann man die so formulieren, dass für $letter z.B. ein Array mit allen Möglichkeiten durchgegangen wird?
Ich hoffe echt, mir kann damit jemand weiterhelfen...
Einen Kommentar schreiben: