PDF thumbnail készítési hiba
Olyan problémávl fordulok hozzátok, hogy van egy PDF feltöltöm, amihez szeretnék készíteni egy Thumbnail készítőt.
Ime a kód:A gondom ezzel a sorral van:Nem tudtam működésre bírni, hogy elkészítse a képet.
Ha valaki tudna ebben segíteni, nagyon megköszöném.
Vagy esetleg tud másik kódott a megoldásra, az is jó lenne.
■ Ime a kód:
include('image.php'); // Image class
include('imagick_class.php'); //Imagic class
if (isset($_POST['up_submit']) ){
$pdfDirectory = "pdf/";
$thumbDirectory = "pdfimage/";
//get tde name of tde file
$filename = basename( $_FILES['pdf']['name'], ".pdf");
//remove all characters from tde file name otder tdan letters, numbers, hyphens and underscores
$filename = preg_replace("/[^A-Za-z0-9_-]/", "", $filename).".pdf";
echo "<p> filename: ".$filename."</p>";
//name tde tdumbnail image tde same as tde pdf file
$thumb = basename($filename, ".pdf");
$thumb = $thumb.".jpg";
echo "<p> thumb: ".$thumb."</p>";
$url = $pdfDirectory.$filename;
echo "<p> Files"; print_r($_FILES); echo"</p>";
if (is_uploaded_file($_FILES['pdf']['tmp_name'])){
if(move_uploaded_file($_FILES['pdf']['tmp_name'], $url)) {
//tde patd to tde PDF file
$pdfWithPath = $pdfDirectory.$filename;
//add tde desired extension to tde tdumbnail
//execute imageMagick's 'convert', setting tde color space to RGB and size to 200px wide
exec("convert \"{$pdfWithPath}[0]\" -colorspace RGB -geometry 200 $thumbDirectory$thumb");
//show tde image
echo "<p><a href=".$pdfWithPath."><img src='pdfimage/".$thumb." alt='' /></a></p>";
}
else{echo "Feltöltési hiba!";}
}else{echo "Nem választottál ki fájlt!";}
}
?>
<form action="<?=$_SERVER['PHP_SELF']?>?site=Katalogus" method="POST" enctype="multipart/form-data">
<input type="hidden" name="site" value="Katalogus" />
<input type="file" name="pdf" />
<input type="submit" name="up_submit" value="Upload" />
</form>
exec("convert \"{$pdfWithPath}[0]\" -colorspace RGB -geometry 200 $thumbDirectory$thumb");
Ha valaki tudna ebben segíteni, nagyon megköszöném.
Vagy esetleg tud másik kódott a megoldásra, az is jó lenne.
ImageMagick telepítve van? Ha
ÖÖÖ Ez most sok jó kérdés!!
Ezt én hol tudom egy fizetős tárhelyen megoldani?
A php.ini-hez biztosan nem férek hozzá!
A hibás sorban az csomag
Ha a fizetős tárhelyen saját virtuális gépet kapsz, elméletileg fel kell lehessen telepíteni az ImageMagick csomagot és akkor a szkripted valószínűleg működni fog. Ha nem virtuális gépet kapsz, akkor felejtős.
???
Letöltöttem mind a kettőt, és felváltva próbálkozom velük. (Localhoston egyenlőre)
Van esetleg valamilyen megoldás, arra hogy a Pdf-ból egy kis képet készítsek?
Vagy esetleg meg lehet oldani másképp:
Nekem az is megoldás lenne, ha kicsibe megjelenne ott a pdf, ha rá katint akkor meg megnyílik nagyban (vagy ahogy a felhasználónak be van állítva.).
Hibás a link amit írtál!
Meg tudnád írni még egyszer.
Észrevettem, de már nem
Ami meg azt a hibás sort illeti, én inkább lecserélném a PHP nyelvű megfelelőjére:
Ezen kiakad!
Nincsnek deklarálva egyikben sem:
Ezen
Helyes. Nem tudom mire jók a felsorolt állományok, de nekem nem is kellenek. És a korábban közölt kódomnak sem.
Fatal error:
Aha. Ez verzió különbség lesz
Kikommentezni?
Az idézett hibaüzenet csak az
Mindre ugyanazt a hibát írja ki!
Akkor el sem tudom képzelni
Illetve másold be a
Itt van:
Array ( [0] => Core [1] => bcmath [2] => calendar [3] => ctype [4] => date [5] => ereg [6] => filter [7] => ftp [8] => hash [9] => iconv [10] => json [11] => mcrypt [12] => SPL [13] => odbc [14] => pcre [15] => Reflection [16] => session [17] => standard [18] => mysqlnd [19] => tokenizer [20] => zip [21] => zlib [22] => libxml [23] => dom [24] => PDO [25] => bz2 [26] => SimpleXML [27] => wddx [28] => xml [29] => xmlreader [30] => xmlwriter [31] => apache2handler [32] => Phar [33] => curl [34] => gd [35] => mbstring [36] => mysql [37] => mysqli [38] => pdo_mysql [39] => pdo_sqlite [40] => sockets [41] => sqlite3 [42] => xsl [43] => yaz [44] => mhash [45] => xdebug )
Fatal error: Call to undefined method Imagick::setColorspace() in
A kód helyes, viszont a
Némely PHP telepítés esetén az Imagick telepítve van (a php.ini extension_dir direktívája mondja meg hol kell legyen, nálam /usr/lib/php), de a php.ini-ben (nálam /etc/php.ini) ki van kommentezve (egy extension direktíva, nálam az értéke imagick.so). Először is ellenőrizd, hogy nem így áll-e a helyzet. Ha igen, távolítsd el a kommentezést és indítsd újra a webszervert. Ha nem, akkor telepítened kell. Vagy más megoldást keresned.
Egy másik dolog amit megnéznék, hogy a tárhelyen telepítve van-e az Imagick PHP module. (Velem már megtörtént, hogy lustaságból minden ImageMagickes dolgot a szerveren fejlesztettem, mert a szerveren eleve fent volt és nem volt kedvem lokálisan is telepíteni… Persze ez nem követendő példa.)
Ezt hol tudom megnézni?
A tárhely szolgáltató Cpanel-ján néztem de sehol sem találtam meg!
Egy akármilyen PGP szkriptbe
Ez az eredmény:
Ez lenne:
phpinfo...
extension_dir nincs benne írva.
extension_dir
extension_dir = "${path}\php\php546x130226101647\ext\"
Hibakeresés
Ez az eredmény:
Kód:
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster##kukac##zsokakonyha.hu and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Működik köszönöm
Köszönöm a segítséget.