Jump to content

PHP Image Gallery keeps displaying code or image not showing correctly


slaterino

Recommended Posts

I've posted regarding this link before but have tried everything and am now looking to provide more code and see if anyone can pinpoint the issue. I think it could be related to the Apache configuration. Please let me know if I am wrong. Basically, I have created an image gallery with link:

 

http://www.thedaffodilsociety.com/gallery/

 

When going onto this site and navigating through the gallery, sometimes an image will not show and sometimes all that will appear is the code for the page prefaced by something like this:

 

///

 

HTTP/1.1 200 OK

Date: Wed, 30 Jul 2008 19:26:10 GMT

Server: Apache/2

X-Powered-By: PHP/4.4.8

Expires: Thu, 19 Nov 1981 08:52:00 GMT

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Pragma: no-cache

Keep-Alive: timeout=15, max=92

Connection: Keep-Alive

Transfer-Encoding: chunked

Content-Type: text/html

 

1088

///

 

I've restarted the Apache server which has not helped. I have noticed that some of my album images are saved with an extra full stop. For instance, they end in ..jpg. Can anyone spot why this is happening?

 

I've included all the code for my config.php and functions.php which I think are where the problem is most likely to be. If someone can help point in the right direction with this that would be amazing!!!!

 

Thanks so much,

Russ

 

functions.php

///

 

<?php

function uploadImage($inputName, $uploadDir)

{

$image    = $_FILES[$inputName];

$imagePath = '';

$thumbnailPath = '';

 

if (trim($image['tmp_name']) != '') {

$ext = substr(strrchr($image['name'], "."), 1);

 

$imagePath = strtolower(md5(rand() * time()) . ".$ext");

$result    = move_uploaded_file($image['tmp_name'], $uploadDir . $imagePath);

 

if ($result) {

$result = createThumbnail($uploadDir . $imagePath, $uploadDir . $imagePath, FullImage_WIDTH);

$thumbnailPath=strtolower(md5(rand() * time()) . ".$ext");

$result = createThumbnail($uploadDir . $imagePath, $uploadDir . 'thumbnail/' . $thumbnailPath, THUMBNAIL_WIDTH);

 

if (!$result) {

unlink($uploadDir . $imagePath);

$imagePath = $thumbnailPath = '';

} else {

$thumbnailPath = $result;

}

} else {

$imagePath = $thumbnailPath = '';

}

 

}

 

 

return array('image' => $imagePath, 'thumbnail' => $thumbnailPath);

}

 

function createThumbnail($srcFile, $destFile, $width, $quality = 75)

{

$thumbnail = '';

 

if (file_exists($srcFile)  && isset($destFile))

{

$size        = getimagesize($srcFile);

$w          = number_format($width, 0, ',', '');

$h          = number_format(($size[1] / $size[0]) * $width, 0, ',', '');

 

$thumbnail =  copyImage($srcFile, $destFile, $w, $h, $quality);

}

 

}

 

function copyImage($srcFile, $destFile, $w, $h, $quality = 75)

{

    $tmpSrc    = pathinfo(strtolower($srcFile));

    $tmpDest    = pathinfo(strtolower($destFile));

    $size      = getimagesize($srcFile);

 

    if ($tmpDest['extension'] == "gif" || $tmpDest['extension'] == "jpg")

    {

      $destFile  = substr_replace($destFile, 'jpg', -3);

      $dest      = imagecreatetruecolor($w, $h);

      //imageantialias($dest, TRUE);

    } elseif ($tmpDest['extension'] == "png") {

      $dest = imagecreatetruecolor($w, $h);

      //imageantialias($dest, TRUE);

    } else {

      return false;

    }

 

    switch($size[2])

    {

      case 1:      //GIF

          $src = imagecreatefromgif($srcFile);

          break;

      case 2:      //JPEG

          $src = imagecreatefromjpeg($srcFile);

          break;

      case 3:      //PNG

          $src = imagecreatefrompng($srcFile);

          break;

      default:

          return false;

          break;

    }

 

    imagecopyresampled($dest, $src, 0, 0, 0, 0, $w, $h, $size[0], $size[1]);

 

    switch($size[2])

    {

      case 1:

      case 2:

          imagejpeg($dest,$destFile, $quality);

          break;

      case 3:

          imagepng($dest,$destFile);

    }

    return $destFile;

 

}

 

function getPagingLink($totalResults, $pageNumber, $itemPerPage = 10, $strGet = '')

{

$pagingLink    = '';

$totalPages    = ceil($totalResults / $itemPerPage);

 

// how many link pages to show

$numLinks      = 10;

 

if ($totalPages > 1) {

$self = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] ;

 

if ($pageNumber > 1) {

$page = $pageNumber - 1;

if ($page > 1) {

$prev = " <a href=\"$self?pageNum=$page&$strGet\">[Prev]</a> ";

} else {

$prev = " <a href=\"$self?$strGet\">[Prev]</a> ";

}

 

$first = " <a href=\"$self?$strGet\">[First]</a> ";

} else {

$prev  = ''; // we're on page one, don't show 'previous' link

$first = ''; // nor 'first page' link

}

 

if ($pageNumber < $totalPages) {

$page = $pageNumber + 1;

$next = " <a href=\"$self?pageNum=$page&$strGet\">[Next]</a> ";

$last = " <a href=\"$self?pageNum=$totalPages&$strGet\">[Last]</a> ";

} else {

$next = ''; // we're on the last page, don't show 'next' link

$last = ''; // nor 'last page' link

}

 

$start = $pageNumber - ($pageNumber % $numLinks) + 1;

$end  = $start + $numLinks - 1;

 

$end  = min($totalPages, $end);

 

$pagingLink = array();

for($page = $start; $page <= $end; $page++) {

if ($page == $pageNumber) {

$pagingLink[] = " $page ";  // no need to create a link to current page

} else {

if ($page == 1) {

$pagingLink[] = " <a href=\"$self?$strGet\">$page</a> ";

} else {

$pagingLink[] = " <a href=\"$self?pageNum=$page&$strGet\">$page</a> ";

}

}

 

}

 

$pagingLink = implode(' | ', $pagingLink);

 

$pagingLink = $first . $prev . $pagingLink . $next . $last;

}

 

return $pagingLink;

}

 

function showBreadcrumb()

{

if (isset($_GET['album'])) {

$album = $_GET['album'];

$sql  = "SELECT al_name

                FROM tbl_album

        WHERE al_id = $album";

 

$result = mysql_query($sql) or die('Error, get album name failed. ' . mysql_error());

$row = mysql_fetch_assoc($result);

echo ' > <a href="index.php?page=list-image&album=' . $album . '">' . $row['al_name'] . '</a>';

 

if (isset($_GET['image'])) {

$image = $_GET['image'];

$sql  = "SELECT im_title

FROM tbl_image

WHERE im_id = $image";

 

$result = mysql_query($sql) or die('Error, get image name failed. ' . mysql_error());

$row = mysql_fetch_assoc($result);

 

echo ' > <a href="index.php?page=image-detail&album=' . $album . '&image=' . $image . '">' . $row['im_title'] . '</a>';

}

}

}

 

?>

 

///

 

 

config.php

///

<?php

session_start();

 

$dbhost = 'xxxxxxxx';

$dbuser = 'xxxxxxxx';

$dbpass = 'xxxxxxxx';

$dbname = 'xxxxxxxx';

 

define('ALBUM_IMG_DIR', '/home/sites/thedaffodilsociety.com/public_html/gallery/images/album/');

 

define('GALLERY_IMG_DIR', '/home/sites/thedaffodilsociety.com/public_html/gallery/images/gallery/');

 

define('THUMBNAIL_WIDTH', 100);

 

define('FullImage_WIDTH', 450);

 

$conn = mysql_connect ($dbhost, $dbuser, $dbpass) or die ("I cannot connect to the database because: " . mysql_error());

mysql_select_db ($dbname) or die ("I cannot select the database '$dbname' because: " . mysql_error());

?>

 

///

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.