Ergebnis 1 bis 3 von 3
Thema: Slideshow
-
10-10-2007, 16:37 #1
Slideshow
Hi, ich habe mir ein PHP-Skript für eine Slideshow gebastelt, welche Bilder aus einer Datenbank holt. Allerdings habe ich das Prob, dass das erste bzw. das letzte Bild beim Navigieren immer 2x angezeigt wird. Ich probiere schon mit Vars wie x, i und y, komme aber nicht klar.
Vielleicht könnt ihr mal einen Blick drauf werfen.
Außerdem würde ich dieses Skript gerne durch eine automatische Slideshow erweitern. Habt ihr eine Idee?
thx
PHP-Code:$query = "SELECT b.bid, b.bild, b.titel FROM `".$table_7."` b WHERE b.bid = ANY
(SELECT k.bid FROM `".$table_8."` k, `".$table_6."` p2 WHERE k.slid = ".$_GET['slid'].") ORDER BY b.bid";
//
$qu = mysql_query($query, $conn_id);
$menge = mysql_num_rows($qu);
//
for ($i = 0; $i < $menge; $i++) {
$row[$i] = mysql_fetch_array($qu);
}
//
if (isset($row[$x]) && (0 <= $x) && ($x < $i)) {
echo '<div align="center"><p><img src="images/'.$_GET['slid'].'/'.$row[$x]['bild'].'"></p>'.
'<p>Beschreibung:</p><p>'.$row[$x]['titel'].'</p></div>';
//
echo '<img src="../../grafix/pfeil_2_links.gif"> <a id="link_footer" href="?slid='.$_GET['slid'].'&x='.($x-1).'">zurück</a> | <a id="link_footer" href="?slid='.$_GET['slid'].'&x='.($x+1).'">vor</a> <img src="../../grafix/pfeil_2.gif" />';
}
else {
if ($x > 0) {
$x = ($x-1);
echo '<div align="center"><p><img src="images/'.$_GET['slid'].'/'.$row[$x]['bild'].'"></p>'.
'<p>Beschreibung:</p><p>'.$row[$x]['titel'].'</p></div>';
//
echo '<img src="../../grafix/pfeil_2_links.gif"> <a id="link_footer" href="?slid='.$_GET['slid'].'&x='.$x.'">zurück</a>';
}
if ($x < 0) {
$x = ($x+1);
echo '<div align="center"><p><img src="images/'.$_GET['slid'].'/'.$row[$x]['bild'].'"></p>'.
'<p>Beschreibung:</p><p>'.$row[$x]['titel'].'</p></div>';
//
echo '<a id="link_footer" href="?slid='.$_GET['slid'].'&x='.$x.'">vor</a> <img src="../../grafix/pfeil_2.gif" />';
}
}
-
13-10-2007, 21:29 #2
AW: Slideshow
Na ja. Ich auch nicht. Sicher könnten einige hier durch deinen Code steigen, mich macht's jetzt grad' nicht so an.
Kommentare (//) sind keine Leerzeilenplatzhalter. Sie haben wirklich einen Sinn, nämlich zu kommentieren. Also gebrauche sie doch auch so. Mach ein paar Kommentare 'rein, die Klarheit schaffen, rücke deinen Code mal korrekt ein, und vergib etwas aussagekräftigere Namen als x, y, i, a, b, c...
Persönlich finde ich $x++ einfacher zu lesen als $x = ($x+1);, analog dazu $x--.
Kann man aber sehen wie man will.
Gruss jeko
-
17-10-2007, 17:41 #3
AW: Slideshow
Na gut! Wenn`s schöa moacht! ;-)
PHP-Code:// Abfrage zweier Tabellen zwecks Abgleich des Fremdschlüssels
$query = "SELECT b.bid, b.bild, b.titel FROM `".$table_7."` b WHERE b.bid = ANY
(SELECT k.bid FROM `".$table_8."` k, `".$table_6."` p2 WHERE k.slid = ".$_GET['slid'].") ORDER BY b.bid";
$qu = mysql_query($query, $conn_id);
$menge = mysql_num_rows($qu);
// Beginn Schleife für die Bilderanzeige
for ($i = 0; $i < $menge; $i++) {
// Daten in ein Array
$row[$i] = mysql_fetch_array($qu);
}
// Wenn ein Datensatz vorhanden und nicht kleiner als 0 und nicht größer als die Anzahl der Arrays ($menge) ist
if (isset($row[$x]) && (0 <= $x) && ($x < $i)) {
// $_GET['slid'] steht für einen beim Upload angelegten Ordner
// dann der Aufruf des jeweiligen Arrays
echo '<div align="center"><p>
<img src="images/'.$_GET['slid'].'/'.$row[$x]['bild'].'"></p>'.
'<p>Beschreibung:</p><p>'.$row[$x]['titel'].'</p></div>';
// Folgend eine Art Menu (vorerst so!)
// x wird mit dem Wert -1/+1 gepostet
echo '<img src="../../grafix/pfeil_2_links.gif">
<a id="link_footer" href="?slid='.$_GET['slid'].'&x='.($x-1).'">zurück</a>
|
<a id="link_footer" href="?slid='.$_GET['slid'].'&x='.($x+1).'">vor</a>
<img src="../../grafix/pfeil_2.gif" />';
}
else {
// $x ist nur bei ersten Aufruf der Seite 0
if ($x > 0) {
$x--;
echo '<div align="center"><p>
<img src="images/'.$_GET['slid'].'/'.$row[$x]['bild'].'"></p>'.
'<p>Beschreibung:</p><p>'.$row[$x]['titel'].'</p></div>';
// bei $x > 0 gibt es nur noch den zurück-Button
echo '<img src="../../grafix/pfeil_2_links.gif">
<a id="link_footer" href="?slid='.$_GET['slid'].'&x='.$x.'">zurück</a>';
}
if ($x < 0) {
$x++;
echo '<div align="center"><p>
<img src="images/'.$_GET['slid'].'/'.$row[$x]['bild'].'"></p>'.
'<p>Beschreibung:</p><p>'.$row[$x]['titel'].'</p></div>';
// bei $x < 0 gibt es nur noch den vor-Button
echo '<a id="link_footer" href="?slid='.$_GET['slid'].'&x='.$x.'">vor</a>
<img src="../../grafix/pfeil_2.gif" />';
}
}
Ähnliche Themen
-
carousel slideshow, ich will zwei, aber wie???
Von Kugelfisch im Forum JavaScriptAntworten: 3Letzter Beitrag: 31-03-2007, 17:54 -
Conveyor Belt slideshow script / vertikal
Von SchnapzZ-mauzZ im Forum JavaScriptAntworten: 0Letzter Beitrag: 26-07-2005, 15:47 -
Bildwechsel beim Conveyor Belt slideshow script
Von susan_goebel im Forum JavaScriptAntworten: 3Letzter Beitrag: 23-06-2005, 15:30 -
slideshow setzt onmouseover außer kraft...hilfe?!
Von SchnapzZ-mauzZ im Forum JavaScriptAntworten: 0Letzter Beitrag: 28-01-2005, 00:17 -
manuelle slideshow
Von MrPresident im Forum JavaScriptAntworten: 10Letzter Beitrag: 17-02-2003, 14:12
Lesezeichen