Ver Mensaje Individual
  #2 (permalink)  
Antiguo 21/05/2005, 18:27
Avatar de stone_neo
stone_neo
 
Fecha de Ingreso: abril-2004
Ubicación: Peru
Mensajes: 438
Antigüedad: 20 años, 1 mes
Puntos: 15
Script GNU

Mira Aaronmx aqui te mando un script que baje de www.phpbuilder.com es para armar una galeria de fotos.Yo estoy haciendo mi propio script basandome en este script y en otros que he encontrado, pronto lo subire con su respectiva ayuda en español. Pero por el momento te dejo con este, si tienes alguna duda , solo escribeme.

Ahi te va el codigo :

Código PHP:

<?
 
// AUTHOR:
//  Jo Demol ([email protected])

//---Variables---

$scale      0;
$maxwidth   640;
$maxheight  480;
$thumbmaxw  50;
$thumbmaxh  50;
$imgperpage 10;
$imgperrow  5;
$pgperrow   10;
$currentdir getcwd ();
$typelist   = array("jpg","jpeg","gif","png","JPG");
$imagelist  = array();
$title      "Pics";
$stylesheet '' ;
$home       "{$_SERVER['PHP_SELF']}";
$this_page  "{$_SERVER['PHP_SELF']}";
$caption    "";
$captionext "txt";

//--- ind is put to zero when the script is first called uppon---

if(!isset($_GET['ind'])) 
    
$_GET['ind'] = 0;
$index $_GET['ind'];

//---the following code iterates through the directory and puts any image found in the imagelist array---

$dp=opendir($currentdir);
while ( 
false != ( $file=readdir($dp) ) ) {
        if (
is_file($file) && $file!="." && $file!=".."){

            
$extention explode(".",$file);
            
$extfield count($extention)-1;
            
$extention $extention[$extfield];

            if( 
in_array($extention,$typelist) ){
                
array_push ($imagelist,$file);
            }
        }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
           "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">




<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
     

      <title><?= $title ?></title>
      <?
      
if ($stylesheet == ''){
          
//--insert the default style sheet into html if none specified
          
echo '<style type="text/css">'
              
.'.imag { border-style : solid;'
                  
.'border-color: blue;'
                  
.'border-width : 1px;}'
            
.'.thumb { border-style : solid;'
                
.'border-color: #999999;'
                
.'border-width : 2px;}'
            
.'A:link { color: #999999;'
                
.'text-decoration : none; }'
            
.'A:visited { color: #999999;'
                
.'text-decoration : none; }'
            
.'A:hover { color:blue; }'
            
.'</style>';
      } elseif (
$stylesheet == 'none') {
      
//--no style sheet if that is what you want
      
} else {
          echo 
"<link rel=\"STYLESHEET\" href=\"$stylesheet\" />";
      }
      
?>
</head>
<body>

<table align="center" border="0">
 <tr>
  <td>
<?       if($index->= 0) {?>
   <a href='<?= $this_page ?>?ind=<?= $index-1 ?>'>[ prev ]</a>
<?       ?>
  </td>
  <td>
      <?

//--- This is where the large pictures are resized so that they maintain ratio---

        
$sizeee getimagesize ("$imagelist[$index]");
        
$imgwidth $sizeee[0];
        
$imgheight $sizeee[1];
        
if (
$scale == || $imgwidth $maxwidth || $imgheight $maxheight) {   // decide if img needs to be scaled    
        
$newwidth $imgwidth/($imgheight/$maxheight);
        
$newheight $imgheight/($imgwidth/$maxwidth);
        if (
$imgwidth $imgheight) {
        
            
            
            
            if (
$newwidth $maxwidth)
            
                {
                
                
?>
                <a href="<?= $imagelist[$index?>" target="_blank">
                    <img src="<?= $imagelist[$index?>" width="<?= $maxwidth ?>" height="<?= $newheight ?>" alt="" />
                </a>
                <?
                
} else {
                
                
?>
                <a href="<?= $imagelist[$index?>" target="_blank">
                    <img src="<?= $imagelist[$index?>" width="<?= $newwidth ?>" height="<?= $maxheight ?>" alt="" />
                </a>
                <?
                 
}
            } else { 
        
            
            if (
$newhight $maxheight)
                
                {
                
                
?>
                <a href="<?= $imagelist[$index?>" target="_blank">
                    <img src="<?= $imagelist[$index?>" width="<?= $newwidth ?>" height="<?= $maxheight ?>" alt="" />
                </a>
                <?
                
} else {
                
                
                
?>
                
                <a href="<?= $imagelist[$index?>" target="_blank">
                    <img src="<?= $imagelist[$index?>" width="<?= $maxwidth ?>" height="<?= $newheight ?>" alt="" />
                </a>
                
                <?
        
    
       
        
}
        }
                } else { 
?>
    <a href="<?= $imagelist[$index?>" target="_blank">
        <img src="<?= $imagelist[$index?>" width="<?= $imgwidth  ?>" height="<?= $imgheight ?>" alt="" />
    </a>
    <?    }
      
?>
  </td>
  <td>
<?       if($index+count($imagelist) ) {?>
   <a href="<?= $this_page ?>?ind=<?= $index+1 ?>">[ next ]</a>
<?       ?>
  </td>
 </tr>
 <tr>
  <td>
  </td>
  <td>
   <center><?
         
if (file_exists ($imagelist[$index]. "." $captionext) &&
             
is_file ($imagelist[$index]. "." $captionext) &&
             !
is_dir ($imagelist[$index]. "." $captionext)) 
           include 
$imagelist[$index]. "." $captionext;
         else
           echo 
$caption?>
   </center>
  </td>
  <td>
  </td>
 </tr>
</table>

<table align="center">
 <tr><td></td>
<?

//---this code generates the thumbnails based on the configuration settings---

$nrpages ceilcount($imagelist)/$imgperpage );

for(
$j=0;$j<$nrpages;$j++)
{
    if( 
$index >= ($j*$imgperpage) && ($index < (($j+1) * $imgperpage)) ) {
        for(
$i=($j*$imgperpage);$i<(($j+1) * $imgperpage);$i++) {
            if((
$i%$imgperrow == 0) && ($i 0)) { ?>
 </tr>
 <tr>
<?          
            if(
$i <count($imagelist)  ) {
               
$path "$this_page?ind=".$i?>
  <td>

          <?



//--- This is where the thumbnails are resized so that they maintain ratio---


        
$sizeee getimagesize ("$imagelist[$i]");
        
$imgwidth $sizeee[0];
        
$imgheight $sizeee[1];
        
        
$newthumbw $imgwidth/($imgheight/$thumbmaxh);
        
$newthumbh $imgheight/($imgwidth/$thumbmaxw);
        if (
$imgwidth $imgheight) {
        
            
            
            
            if (
$newthumbw $thumbmaxw)
            
                {
                
                
?>
                <a href="<?= $path ?>">
                    <img src="<?= $imagelist[$i?>" width="<?= $thumbmaxw ?>" height="<?= $newthumbh ?>" alt="" />
                </a>
                <?
                
} else {
                
                
                
?>
                <a href="<?= $path ?>">
                    <img src="<?= $imagelist[$i?>" width="<?= $newthumbw ?>" height="<?= $thumbmaxh ?>" alt=""  />
                </a>
                <?
                 
}
            } else { 
        
            
            if (
$newthumbh $thumbmaxh)
                
                {
                
                
?>
                <a href="<?= $path ?>">
                    <img src="<?= $imagelist[$i?>" width="<?= $newthumbw ?>" height="<?= $thumbmaxh ?>" />
                </a>
                <?
                
} else {
                
                
                
?>
                
                <a href="<?= $path ?>">
                    <img src="<?= $imagelist[$i?>" width="<?= $thumbmaxw ?>" height="<?= $newthumbh ?>" alt="" />
                </a>
                
                <?
        
    
       
        
}
        }
      
?>
  </td>
<?          }
        }
    }
}
?>
 </tr>
</table>
<br />
<center>
<?
//---this code generates links based on the configuration settings---
//---only puts $pgperrow page links per row to make cleaner---

for($j=0;$j<$nrpages;$j++) { 
   if((
$j%$pgperrow == 0) && ($j 0)) { ?>
    <br />
<? ?>
    <a href="<?= $this_page ?>?ind=<?= ($j*$imgperpage?>">[page <?= ($j+1?>]</a>
<? ?>
</center>
<center><a href="<?= $home ?>">[ home ]</a></center>
</body>
</html>
Espero que te sirva hasta pronto. Muy pronto Stone Gallery PHP
__________________
Rubén Darío Huamaní Ucharima
Web : http://www.gorilla-soft.com
Usuario Linux #382 100 :-)