hyperlink +1

Kleiner Denkfehler im Skript, ich hatte die führenden Nullen nicht bedacht...

Siehe oben

Und so?
 
Zuletzt bearbeitet:
das Problem scheint eher was im generieren des Links zu sein. Es steht zwar previous und next, allerdings ist es normaler text und klickbarer link.

P.S. wofür steht '%03d' ?
 
Hast du die Endung auch auf .jpg wieder geändert?

Meine Testbilder waren gifs.

%03d heißt, dass es immer 3 Stellen sind (Zahlen). Falls es weniger sind, soll er sie mit Nullen auffüllen.

So entsteht aus 1 => 001, aber aus 10 wird 010.
 
ja, habe sie wieder in .jpg geändert. Bild wird auch angezeigt, nur der eigentliche Link (prev/next) wird als normaler text angezeigt.
 
Code:
<?php
$image_dir = "./rome/small/";
$count = ( isset($_GET['pic']) ? (int)$_GET['pic'] : '000' );
$link = '<a href="./gallery.php?pic=%d">%s</a>';

$prev = ( file_exists($image_dir.'pic'. sprintf('%03d', $count - 1) .'.gif') && $count > 0 ? sprintf($link, $count - 1, 'Previous') : 'Previous' );
$next = ( file_exists($image_dir.'pic'. sprintf('%03d', $count + 1) .'.gif') ? sprintf($link, $count + 1, 'Next') : 'Next' );
?>
<html>
<head>
<title>Gallerie</title>
</head>
<body>
<p align="center">&nbsp;</p>
<p align="center">Rome/Italy october 2007</p>
<p align="center"><img src="<?php echo $image_dir.'pic'.$count; ?>.gif" width="850" height="565" /></p>
<p align="center">&nbsp;</p>
<div align="center">
<table width="200" border="0">
<tr>
<td><a href="<?php echo $prev; ?>">Prev</a></td>
<td><div align="right"><a href="<?php echo $next; ?>">Next</a></div></td>
</tr>
</table>
</div>
<p align="center">&nbsp;</p>
</body>
</html>
?>

Änderung rot markiert...
 
PHP:
<?php
$image_dir = "./rome/small/";
$count = ( isset($_GET['pic']) ? (int)$_GET['pic'] : '000' );
$link = '<a href="./gallery.php?pic=%d">%s</a>';

$prev = ( file_exists($image_dir.'pic'. sprintf('%03d', $count - 1) .'.jpg') && $count > 0 ? sprintf($link, $count - 1, 'Previous') : 'Previous' );
$next = ( file_exists($image_dir.'pic'. sprintf('%03d', $count + 1) .'.jpg') ? sprintf($link, $count + 1, 'Next') : 'Next' );
?>
<html>
<head>
<title>Gallerie</title>
</head>
<body>
<p align="center">&nbsp;</p>
<p align="center">Rome/Italy october 2007</p>
<p align="center"><img src="<?php echo $image_dir.'pic'.$count; ?>.gif" width="850" height="565" /></p>
<p align="center">&nbsp;</p>
<div align="center">
<table width="200" border="0">
<tr>
<td>
<?php 
  if($prev==true)
{
echo "<a href=\"" . $image_dir . "/pic" . $count-1 . ".jpg\">Prev</a>"
}
else
{
echo "Geht nicht weiter zur&uuml;ck ;)";
}
?>
</td>
<td>
<?php 
  if($next==true)
{
echo "<a href=\"" . $image_dir . "/pic" . $count-+1 . ".jpg\">next</a>"
}
else
{
echo "Geht nicht weiter ;)";
}
?>
</td>
</tr>
</table>
</div>
<p align="center">&nbsp;</p>
</body>
</html>
?>

Uups, hab mir den source nicht so genau angeschaut... ;) Jetzt sollte es gehen...
Habs aber nicht getestet...
 
Auch das wird nicht funktionieren, wegen der vorangestellten Nullen.

PHP:
<?php
$image_dir = "./pics/";
$count = ( isset($_GET['pic']) ? sprintf('%03d', $_GET['pic']) : '000' );
$link = '<a href="./test.php?pic=%d">%s</a>';

$prev = ( file_exists($image_dir.'pic'. sprintf('%03d', $count - 1) .'.jpg') && $count > 0 ? sprintf($link, $count - 1, 'Previous') : 'Previous' );
$next = ( file_exists($image_dir.'pic'. sprintf('%03d', $count + 1) .'.jpg') ? sprintf($link, $count + 1, 'Next') : 'Next' );
?>
<html>
<head>
<title>Gallerie</title>
</head>
<body>
<p align="center">&nbsp;</p>
<p align="center">Rome/Italy october 2007</p>
<p align="center"><img src="<?php echo $image_dir.'pic'.$count; ?>.jpg" width="850" height="565" /></p>
<p align="center">&nbsp;</p>
<div align="center">
<table width="200" border="0">
<tr>
<td><?php echo $prev; ?></td>
<td><div align="right"><?php echo $next; ?></div></td>
</tr>
</table>
</div>
<p align="center">&nbsp;</p>
</body>
</html>
?>

Also ich habs so gerade nochmal getestet und es funktioniert.
Übrigens, die Bedingung ob das nächste Bild da ist oder nicht, wird bereits oben geprüft, mit [phpf]file_exists[/phpf].

Musst nur den Ordner oben wieder ändern.
 
@Bratkartoffel: Okay, ich hab ein paar vergessene Simikolone ergänzt und nun wirft das Script keine Errors mehr raus. Allerdings werden die Links als Text dargestellt und sehen so aus: -1.jpg">Prev 1.jpg">next
 
Zurück