Avatar billede mr-mycom Nybegynder
03. september 2005 - 17:16 Der er 18 kommentarer og
1 løsning

Fejl i php site

Ja, når jeg vil loade mine billeder på min hp kommer den med følgende fejl: http://www.kreller.dk/billeder/fester/billedgalleri.php
Som i kan se der er det line 89 den er gal med. Så den får i os lige: $srcim = imagecreatefromjpeg( $filename );
Avatar billede leif Seniormester
03. september 2005 - 17:21 #1
Siden blev ikke fundet.

Den præcise fejlmeddelelse ?
Avatar billede gil-galad Nybegynder
03. september 2005 - 17:22 #2
billedet du prøver at behandle med gdlib tager for meget hukommelse.... Dit script må maks bruge 8388608 bytes (8mb)

Løsning:
-hvis det er din server kan du tillade mere hukkomelse
-Optimere koden/billedet så det ikke kræver så meget
Avatar billede gil-galad Nybegynder
03. september 2005 - 17:22 #3
du kan evt smide noget kode.
Avatar billede mr-mycom Nybegynder
03. september 2005 - 17:22 #4
Altså det er mit webhotel hostet @ web10, så regner ikke med at jeg kan tillade mere?
Avatar billede mr-mycom Nybegynder
03. september 2005 - 17:23 #5
Jeg smider lige lidt kode!

<?php

echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Strict //EN\" \"http://www.w3.org/TR/html4/strict.dtd\">\n";
echo "<html>\n";
echo "<head>\n";
echo "<title>Title</title>\n";
echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\">\n";
echo "</head>\n";
echo "<body>\n";
echo "<div id=\"content\">\n";
echo "<h1>Title</h1>\n";

function resize( $filename, $newfilename, $maxw, $maxh )
{
    $result = false;
    $srcim = imagecreatefromjpeg( $filename );
    $ow = imagesx( $srcim );
    $oh = imagesy( $srcim );
    $wscale = $maxw / $ow;
    $hscale = $maxh / $oh;
    $scale = ( $hscale < $wscale ? $hscale : $wscale );
    $nw = round( $ow * $scale, 0 );
    $nh = round( $oh * $scale, 0 );
    $dstim = imagecreatetruecolor( $nw, $nh );
    imagecopyresampled( $dstim, $srcim, 0, 0, 0, 0, $nw, $nh, $ow, $oh );
    $result = imagejpeg( $dstim, $newfilename, 85 );
    imagedestroy( $dstim );
    imagedestroy( $srcim );
    return $result;
}

$dir = getcwd();

$allowExt = array("jpg");

// Open a known directory, and proceed to read its contents
if (is_dir($dir))
{
    if ($dh = opendir($dir))
    {
        $fileArray = array();
        while(($file = readdir($dh)) !== false)
        {
            $arr = explode (".", $file);
            $extension = end($arr);
            if(in_array($extension,$allowExt))
            {
                if(file_exists("thumb_" . $file) || preg_match('/^thumb_/', $file))
                {
                    ;
                }
                else
                {
                    resize($file, getcwd() . "/thumb_" . $file, 300, 300);
                }
             
                if(!preg_match('/^thumb_/', $file))
                {
                    $thumb = "thumb_" . $file;
                    $fileArray[$thumb] = $file;
                }
            }
        }
        closedir($dh);
    }
}

if(count($fileArray)>0)
{
    echo "<table id=\"centerTable\">\n";
    foreach($fileArray as $thumb => $file)
    {
        echo "<tr><td><a target=\"_blank\" href=\"" . $file . "\"><img src=\"".$thumb."\"></a></td></tr>\n";
    }
    echo "</table>\n";
}
else
{
    echo "Vi har ikke uploadet nogle billeder endnu, de kommer...";
}

echo "</div>\n";
echo "</body>\n";
echo "</html>\n";

?>
Avatar billede mr-mycom Nybegynder
03. september 2005 - 17:38 #6
Jeg vil helst undgå at skulle gøre alle billederne mindre..!
Avatar billede leif Seniormester
03. september 2005 - 17:46 #7
Hvor store er dine billeder ?
Avatar billede gil-galad Nybegynder
03. september 2005 - 17:46 #8
hvad er det helt præcist det script gør?
Avatar billede mr-mycom Nybegynder
03. september 2005 - 17:53 #9
Mine billeder er op til 1.2 mb..
Du kan læse hvad scriptet gør her: http://www.eksperten.dk/spm/645140
Avatar billede gil-galad Nybegynder
03. september 2005 - 17:56 #10
hvis det er planen at det er de samme billeder som skal skaleres ned hver gang, skal du helt sikkert komprimere dem. 1.2 mb er alt alt for meget til det mest almindelige webbrug.
P.S. Billederne behøver jo ikke at blive mindre når du komprimere dem...
Avatar billede mr-mycom Nybegynder
03. september 2005 - 17:59 #11
Nope, det er rigtig, men den tid det tager gider jeg ikke bruge på det, med mindre man kan lave et script der gør dem mindre, eller et program til at komprimere dem?
Avatar billede gil-galad Nybegynder
03. september 2005 - 18:01 #12
du kan gratis hente programmet "IrfanView" som kan komprimere alle billeder i en mappe efter dit eget valg.
Avatar billede gil-galad Nybegynder
03. september 2005 - 18:02 #13
Avatar billede mr-mycom Nybegynder
03. september 2005 - 18:02 #14
Nice da, og det tager dem allesammen på engang?
Avatar billede gil-galad Nybegynder
03. september 2005 - 18:05 #15
jeps..
Avatar billede gil-galad Nybegynder
03. september 2005 - 18:11 #16
Og desuden behøver du ikke at skrive sådan:
echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Strict //EN\" \"http://www.w3.org/TR/html4/strict.dtd\">\n";
echo "<html>\n";
echo "<head>\n";
echo "<title>Title</title>\n";
echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\">\n";
echo "</head>\n";
echo "<body>\n";
echo "<div id=\"content\">\n";
echo "<h1>Title</h1>\n";

Du kan nøjes med:

echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Strict //EN\" \"http://www.w3.org/TR/html4/strict.dtd\">\n
<html>\n
<head>\n
<title>Title</title>\n
<link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\">\n
</head>\n
<body>\n
<div id=\"content\">\n
<h1>Title</h1>\n";

og:

echo "</div>\n
</body>\n
</html>\n";
Avatar billede mr-mycom Nybegynder
03. september 2005 - 20:16 #17
Vil du smide et svar, du er komemt med en masse goodies :D
Avatar billede dotcom1 Nybegynder
05. september 2005 - 17:08 #18
Tutorial til batch-opgaver med IrfanView kan du se her: http://www.eksperten.dk/artikler/180
Avatar billede gil-galad Nybegynder
05. september 2005 - 20:02 #19
svar!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester