Gå til innhold

Galleri med php


Anbefalte innlegg

Jeg har lyst til å ha et galleri på siden min, og jeg har funnet en kode til det her inne som kakkle har skrevet. Og det funker kjempebra. Men så har det seg slik at jeg vil at bildene skal vises i en mindre størrelse, slik at de får plass på siden, og når man trykker de, åpner de i et nytt vindu med full størrelse. Noen som kan hjelpe meg?

<?php include ("/home/n/ne/neg90/public_html/skins/cookiecheck.php");?> 
<? include($headervar.$extension); ?> 
<?php
if(!isset($_GET["dir"])) {
print "Oversikt over album: <br>";
// Variabel som skal si om en mappe har bilder eller ikke
$hasimage = false;
if ($handle = opendir('.')) { // åpner gjeldende mappe (som scriptet er i)
  while (false !== ($file = readdir($handle))) {
     if ($file != "." && $file != ".." && is_dir($file)) { // Ser bort fra . og .. og sjekker om filen er en katalog
        if($dirhandle = opendir($file)) { // åpner katalogen 
          while(false !== ($subdir = readdir($dirhandle))) { //leser katalogen
            if($subdir != "." && $subdir != ".." && strpos($subdir, ".jpg")) { //Sjekker om det er jpg filer i katalogen
              $hasimage = true; // setter den til sann, hvis det er bilder i mappen
            }
          }
        }
        if($hasimage) $dir[] = $file; // legger mappen i array, dersom det har bilder ($hasimage=true)
      //$dir[] = $file;
       //echo "$teller. <a href='?dir=$file>$file</a><br>";
       //$teller++;
     }
  }
 closedir($handle);
}
//Skriver ut mappene som inneholder bilder
for($i=0;$i<count($dir);$i++) {
  echo ($i+1).". <a href='?dir=".$dir[$i]."'>".$dir[$i]."<br>";
}
}
else {
$dir = $_GET["dir"];
if ($handle = opendir($dir)) {
   while (false !== ($file = readdir($handle))) {
       if ($file != "." && $file != ".." && strpos($file, ".jpg")) {
      $image[] = $file;
//           echo "<img src='$file' alt='$file' title='$file'>\n";
       }
   }
   closedir($handle);
}
$bildenr = (isset($_GET[id]))?$_GET["id"]:0;
//........................................
$limit = 4;
$start= $bildenr-$limit;
$stopp = $bildenr+$limit;
if($start<0) {
        $start=0;
 $stopp=$limit*2;
}
if($stopp>count($image)) {
        $stopp=count($image);
}
if($start>0) echo "[<a href='?id=0'>1</a>] ... ";
for($i=$start;$i<$stopp;$i++) {
        if($i!=$bildenr) {
                if(file_exists("thumbs/t_".$image[$i])) {
                  echo " <a href = '?dir=$dir&id=$i'><img src='thumbs/t_".$image[$i]."' alt='$i' title='$i' style='border: 2px solid #FFF;'></a> ";
                }
                else {
                  echo " <a href = '?dir=$dir&id=$i'>[$i]</a>";
                }
        }
        else {
                if(file_exists("thumbs/t_".$image[$i])) {
                  echo " <img src='thumbs/t_".$image[$i]."' style='border: 2px solid #f33' alt='$i' title='$i'> ";
                }
                else {
                  echo "[$i]";
                }
        }
}
if($stopp <= count($image)-1) echo " ... [<a href='?dir=$dir&id=".(count($image)-1)."'>".count($image)."</a>]";
echo "<hr>";
echo "<div style='height: auto; width:auto;'>";
// ........................................
//Sjekk om Forrige bilde link skal vises
if($bildenr > 0) {
 echo "[<a href='?dir=$dir&id=".($bildenr-1)."'>Forrige bilde</a>] ";
}
//Sjekk om neste bilde link skal vises
if($bildenr < count($image)-1) {
 echo " [<a href='?dir=$dir&id=".($bildenr+1)."'>Neste bilde</a>] ";
}
print "<p>";
print "<img src='$dir/".$image[$bildenr]."' alt='".$image[$bildenr]."' style='margin-right: 50px; float:left;'>";
//print "</p>";
print "</div>";
$limit = 8;
$start= $bildenr-$limit;
$stopp = $bildenr+$limit;
if($bildenr-$limit<0) {
 $start=0;
 $stopp=$limit*2;
}
if($bildenr+$limit>count($image)) {
 $stopp=count($image);
}
if($start>0) echo "1. [<a href='?dir=$dir&id=0'>".$image[0]." </a>]<br>...<br>"; 
for($i=$start;$i<$stopp;$i++) {
 if($i!=$bildenr) {
  echo ($i+1).". [<a href = '?dir=$dir&id=$i'>".$image[$i]."</a>] <br>";
 }
 else {
  echo ($i+1).". [".$image[$i]."] <br>";
 }
}
if($stopp < count($image)) echo " ...<br> ".count($image).". [<a href='?dir=$dir&id=".(count($image)-1)."'>".$image[count($image)-1]."</a>] <br>";
}  
?>
</p>
</div>
<? include($footervar.$extension); ?> 

Lenke til kommentar
Videoannonse
Annonse

Jeg har ikke sett ordentlig pa scriptet, men du har brukt den andre koden han postet sant?

Den er for a lage sma bilder. Som som jeg tror du mener du vil ha.

 

<?
if ($handle = opendir('.')) {
 while (false !== ($file = readdir($handle))) {
     if ($file != "." && $file != ".." && strpos($file, ".jpg")) {
           $image[] = $file;
//           echo "<img src='$file' alt='$file' title='$file'>\n";
     }
 }
 closedir($handle);
}
foreach ($image as $bilde) {
$thumbname = "thumbs/t_".$bilde;
if(file_exists($thumbname)) {
echo "$thumbname already exists ! <br>";
// continue;
}
else {
$thumbwidth=100;
$thumbheight=100;
list($image_width, $image_height) = getimagesize($bilde);
if($thumbwidth && ($image_width < $image_height)) {
 $thumbwidth = ($thumbheight / $image_height)*$image_width;
}
else {
 $thumbheight = ($thumbwidth / $image_width) * $image_height;
}
$image_p = imagecreatetruecolor($thumbwidth, $thumbheight);
$image_d = imagecreatefromjpeg($bilde);
imagecopyresampled($image_p, $image_d, 0, 0, 0, 0, $thumbwidth, $thumbheight, $image_width, $image_height);
imagejpeg($image_p, $thumbname, 100);
echo "$thumbname created !! <br>";
}
}


?>

:)

Lenke til kommentar
Jeg har ikke sett ordentlig pa scriptet, men du har brukt den andre koden han postet sant?

Den er for a lage sma bilder. Som som jeg tror du mener du vil ha.

 

<?
if ($handle = opendir('.')) {
 while (false !== ($file = readdir($handle))) {
     if ($file != "." && $file != ".." && strpos($file, ".jpg")) {
           $image[] = $file;
//           echo "<img src='$file' alt='$file' title='$file'>\n";
     }
 }
 closedir($handle);
}
foreach ($image as $bilde) {
$thumbname = "thumbs/t_".$bilde;
if(file_exists($thumbname)) {
echo "$thumbname already exists ! <br>";
// continue;
}
else {
$thumbwidth=100;
$thumbheight=100;
list($image_width, $image_height) = getimagesize($bilde);
if($thumbwidth && ($image_width < $image_height)) {
 $thumbwidth = ($thumbheight / $image_height)*$image_width;
}
else {
 $thumbheight = ($thumbwidth / $image_width) * $image_height;
}
$image_p = imagecreatetruecolor($thumbwidth, $thumbheight);
$image_d = imagecreatefromjpeg($bilde);
imagecopyresampled($image_p, $image_d, 0, 0, 0, 0, $thumbwidth, $thumbheight, $image_width, $image_height);
imagejpeg($image_p, $thumbname, 100);
echo "$thumbname created !! <br>";
}
}


?>

:)

8674704[/snapback]

Nå blir jeg flau :blush: Glemte helt den :blush:

Lenke til kommentar

Off, det fikk jeg ikke til.Ble avansert. Men har en anna kode som funka som jeg vil, det eneste er at bildene dukka ikke opp, det ble bare et rødt kryss. Kanskje denne passer bedre å bruke?

<?php include ("/home/n/ne/neg90/public_html/skins/cookiecheck.php");?> 
<? include($headervar.$extension); ?> 

<?php 
$mappe = "/home/n/ne/neg90/public_html/bilder/16hosmaria";   
$hoyde = "75";   
$bredde = "75";  

$dir = opendir($mappe); 
$unntak = array(".", "..");  

while($print_bilde = readdir($dir)): 

    if ($print_bilde == $unntak[0] || $print_bilde == $unntak[1]): 
    continue; 
    Endif; 

    $print_bilde = $mappe."/".$print_bilde; 
    echo "\n<a href=\"$print_bilde\" target=\"_blank\"><img src=\"$print_bilde\" height=\"$hoyde\" widht=\"$bredde\" border=\"0\" alt=\"$print_bilde\"></a>\n"; 
Endwhile; 

closedir($dir);
?>

<? include($footervar.$extension); ?> 

Lenke til kommentar
Nei nei nei :p

Husker du ingenting fra den andre traden? xD

 

$mappe = "/home/n/ne/neg90/public_html/bilder/16hosmaria"; 

skal vaere

$mappe = "/bilder/16hosmaria";

 

:)

8674953[/snapback]

Har prøvd, men da kom dette opp:

Warning: opendir(/bilder/16hosmaria): failed to open dir: No such file or directory in /home/n/ne/neg90/public_html/galleri/16hosmaria.php on line 9

Warning: readdir(): supplied argument is not a valid Directory resource in /home/n/ne/neg90/public_html/galleri/16hosmaria.php on line 12

Warning: closedir(): supplied argument is not a valid Directory resource in /home/n/ne/neg90/public_html/galleri/16hosmaria.php on line 22

Lenke til kommentar

Nå får jeg opp dette :(

Warning: opendir(/bilder/Maria-16mai/): failed to open dir: No such file or directory in /home/n/ne/neg90/public_html/galleri/16hosmaria.php on line 9

Warning: readdir(): supplied argument is not a valid Directory resource in /home/n/ne/neg90/public_html/galleri/16hosmaria.php on line 12

Warning: closedir(): supplied argument is not a valid Directory resource in /home/n/ne/neg90/public_html/galleri/16hosmaria.php on line 22

Lenke til kommentar
har du endret i begge scriptene? Eller er du forsatt pa thumbs.php ?

8675485[/snapback]

Nå er koden

<?php include ("/home/n/ne/neg90/public_html/skins/cookiecheck.php");?> 
<? include($headervar.$extension); ?> 

<?php 
$mappe = "/bilder/Maria-16mai/";   
$hoyde = "75";   
$bredde = "75";  

$dir = opendir($mappe); 
$unntak = array(".", "..");  

while($print_bilde = readdir($dir)): 

    if ($print_bilde == $unntak[0] || $print_bilde == $unntak[1]): 
    continue; 
    Endif; 

    $print_bilde = $mappe."/".$print_bilde; 
    echo "\n<a href=\"$print_bilde\" target=\"_blank\"><img src=\"$print_bilde\" height=\"$hoyde\" widht=\"$bredde\" border=\"0\" alt=\"$print_bilde\"></a>\n"; 
Endwhile; 

closedir($dir);
?>

<? include($footervar.$extension); ?> 

Lenke til kommentar

Du vet.. du kan ikke bare bytte script sann midt inni en trad, og forvente at jeg/vi vet hva du holder pa med ;)

 

Bruk det scriptet jeg sa i post #2

da blir alle thumbs lagret i thumbs/ mappen, og det er der du vil ha dem ;)

 

Og du ma gjore om alle feilene dine

 

<?php include ("/home/n/ne/neg90/public_html/skins/cookiecheck.php");?>

 

skal vaere

 

<?php include ("/skins/cookiecheck.php");?>

Lenke til kommentar
Gjest Slettet+142

OK litt OT dette her, men så en liten bit av koden din som irriterte meg litt:

 

Du har dette:

if ($print_bilde == $unntak[0] || $print_bilde == $unntak[1]):
   continue;
   Endif;

 

Du kan godt endre det til dette: :p

if (in_array($print_bilde, $unntak)):
   continue;
   Endif;

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...