Jeg har længe brugt den samme PHP-kode til et billedgalleri. Det er en kode, jeg fik lavet af en af mine venner, der er rimeligt hård til PHP - det er derfor kodet i et sprog, jeg ikke altid helt selv forstår.
Den er delt op i to menu'er. En menu til venstre, hvor man vælger det billedarkiv, man øsker at se, og en menu til højre hvor man ser de billeder der tilhører dette arkiv. Før i tiden havde jeg delt de to ting op i et frameset, men prøver nu at opdatere det, så det bliver lagt ind i en tabel i stedet.
Problemet er at koden også tager menu-punkterne fra menu'en til venstre med, og tror det er billeder i menu'en til højre...
I kan se problemet hér:
- www.theclooneybrothers.dk/images.php
Koden er herunder - På forhånd tak!
<?php
/*********************************/
/* codesign 2004 */
/* Billedearkiv */
/* Sidste ændring: 11/9-04 */
/* (c) Represent.dk */
/* (c) CosyCorners.dk */
/*********************************/
/* Design: Test layout */
/* Design ændret: 11/9-04 */
/*********************************/
include("includes/config.php");
include("includes/functions.php");
/* Sidespecifikke funktioner */
$thumbnail = "";
$rows = array();
$thumbnum = -1;
function thumbnails() {
if($GLOBALS[thumbnail] == "") {
$GLOBALS[thumbnail] = array();
$query = mysql_query("SELECT * FROM $GLOBALS[tb_images] WHERE gallery = '$_GET[id]' ORDER BY time ASC");
while($GLOBALS[rows][] = mysql_fetch_array($query)) { };
mysql_query("UPDATE $GLOBALS[tb_galleries] SET views = views+1 WHERE id = '$_GET[id]'");
}
if($GLOBALS[thumbnum] >= count($GLOBALS[rows]) - 2) return false;
else {
$GLOBALS[thumbnail] = $thumbnail = $GLOBALS[rows][++$GLOBALS[thumbnum]];
/* Hele image tagget gemmes, med korrekt javascript onclick und die ganze mänge */
if($thumbnail[description] == "") $description = "";
else $description = ": \n" . strip_tags($thumbnail[description]);
$GLOBALS[thumbnail]['img'] = "<img src=\"images/$thumbnail[gallery]/tn_$thumbnail[id].jpg\" ".
"alt=\"$thumbnail[name]\" ".
"title=\"View '$thumbnail[name]'"."$description\" ".
"onclick=\"imageopen($thumbnail[id]);\" ".
"style=\"cursor: pointer;\" ".
"width=\"$GLOBALS[cfg_thumbwidth]\" ".
"height=\"$GLOBALS[cfg_thumbheight]\" />";
return true;
}
}
$archive = "";
$archnum = -1;
function archives() {
if($GLOBALS[archive] == "") {
$GLOBALS[archive] = array();
$query = mysql_query("SELECT * FROM $GLOBALS[tb_galleries] ORDER BY time DESC");
while($row = mysql_fetch_array($query)) if(numimgs($row[id])) $GLOBALS[rows][] = $row; //Sorter gallerier uden billeder fra i visningen
}
if($GLOBALS[archnum] >= count($GLOBALS[rows]) - 1) return false;
else {
$GLOBALS[archive] = $GLOBALS[rows][++$GLOBALS[archnum]];
$GLOBALS[archive]['link'] = "images.php?id=" . $GLOBALS[archive][id];
return true;
}
}
?>
<html>
<head>
<script type="text/javascript" src="js/scripts.js"></script>
</head>
<body>
<table width="700px" border="0px">
<tr valign="top">
<td>
<?php
while(archives()) { /* Giver $archive[] - $archive[link] for url'en (i.e. images.php?id=xx) - $archive[] indeholder også alt fra databasen ... i.e. [name], [time], etc. */
echo "<a href=\"$archive[link]\" title=\"".strip_tags($archive[description])."\">";
echo $archive[name];
echo "</a>";
$numimgs = numimgs($archive[id]);
if($numimgs != 1) $plural = "r";
echo " ($numimgs billede" . $plural . ")";
echo "<br />\n";
} ?>
</td>
<td>
<?php if($_GET['id']) { /* Hvis der er valgt arkiv - vis thumbs */
$archive = getarchive($_GET[id]);
echo "<h1>$archive[name]</h1>";
echo cleanhtml($archive[description]) . "<br /><br />";
while(thumbnails()) { /* Giver $thumbnail[] - $thumbnail[img] for <img src= title= onclick= etc.> tagget. $thumbnail[] indeholder også alt fra databasen om billedet ... i.e. [name], [time], etc.*/
echo $thumbnail['img'] . "\n";
} ?>
<?php } else { /* Hvis der ikke er valgt galleri */ ?>
<p>Vælg et arkiv i menu'en til venstre...</p>
<?php } ?>
</td>
</tr>
</table>
</body>
</html>
Indlæg senest redigeret d. 09.02.2009 11:34 af Bruger #14677