Mam problem (a moze i problemu nie ma...) z uploadem zdjec polaczonym z generowaniem miniaturek.
Skrypt dzialal u mnie lokalnie, jak wrzucilem go na serwer to rowniez JA nie mam z nim klopotow - jednak aby upewnic sie ze wszystko gra poprosilem kolege zeby sprawdzil jak jemu to dziala i ... tu wielkie zdziwienie - jemu skrypt nie dziala. Nie wyswietlaja sie zadne komunikaty z bledami (ze zdjecie jest za duze, czy nie ten format pliku) - nie pokazuje nawet pierwszego komunikatu ze plik zostal zrzucony na serwer. Wszystko wyglada tak, jakby w ogole zdjecie nie bylo przesylane na serwer. Kolega twierdzi ze cos tam wysyla ale po wykonaniu sie calego skryptu strona sie nie zmienia tzn. nie dodaje sie zadne zdjecie ani nie ma zadnych komunikatow.
Sam nie moge tego sprawdzic, bo mi wszystko dziala. Analizowalem kod ale zadnych bledow wskazujacych na ten problem nie widze.
Stad mam do Was prosbe - moglibyscie zobaczyc gdzie moze byc blad, bo ja na prawde juz nic nie widze...
Wyciety kod odpowiedzialny za obsluge uploadowanych zdjec:
[php:1:3871640016]<?php
if (($type == 'image/jpg') or ($type == 'image/jpeg')) {
$folder="/obrazki/";
$uploaddir = $_SERVER['DOCUMENT_ROOT'].($folder);
$rand = md5(uniqid(mt_rand()));
$_FILES['userfile']['name'] = $rand.'.jpg';
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
echo"plik zostal zrzucony na serwer<br>";
}else{echo"Plik NIE ZOSTAL zrzucony na serwer! <br>";}
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir.$_FILES['userfile']['name']))
{
} else {
print "Kopiowanie zakończone <b>porażka</b>!"; }
$size = GetImageSize($uploaddir.$_FILES['userfile']['name']);
$width = $size[0];
$height = $size[1];
// POCZATEK TWORZENIA MINIATURKI
if (($width > '120' and $height >'90') or ($width > '68' and $height >'90')) {
if ($width > $height) {
if (!$max_width) $max_width = 120; // max szerokosc miniaturki
if (!$max_height) $max_height = 90; // max wysokosc miniaturki
$typ = 'poz';
} else {
if (!$max_width) $max_width = 68; // max szerokosc miniaturki
if (!$max_height) $max_height = 90; // max wysokosc miniaturki
$typ = 'pion';
}
$x_ratio = $max_width / $width;
$y_ratio = $max_height / $height;
if ( ($width <= $max_width) && ($height <= $max_height) ) {
$tn_width = $width;
$tn_height = $height;
}
else if (($x_ratio * $height) < $max_height) {
$tn_height = ceil($x_ratio * $height);
$tn_width = $max_width;
}
else {
$tn_width = ceil($y_ratio * $width);
$tn_height = $max_height;
}
$src = ImageCreateFromJpeg($uploaddir.$_FILES['userfile']['name']);
$dst = ImageCreateTrueColor($tn_width,$tn_height);
ImageCopyResampled ($dst, $src, 0, 0, 0, 0, $tn_width, $tn_height, $width, $height);
$dopisz = "m_"; //do miniaturki dopisze m_nazwapliku.jpg
ImageJpeg ($dst, $uploaddir.$dopisz .$_FILES['userfile']['name']);
// KONIEC TWORZENIA MINIATURKI
$zdj_m = $dopisz.$_FILES['userfile']['name'];
}else {echo "<p align=center class='info> Wielko?ć tego zdjęcia jest za mała!</p>"; }
// POCZATEK TWORZENIA MAX
if (($width > '640' and $height >'480') or ($width > '480' and $height >'640')) {
if ($width > $height) {
if (!$max_width1) $max_width1 = 640; // max szerokosc max
if (!$max_height1) $max_height1 = 480; // max wysokosc max
$typ = 'poz';
} else {
if (!$max_width1) $max_width1 = 480; // max szerokosc max
if (!$max_height1) $max_height1 = 640; // max wysokosc max
$typ = 'pion';
}
$x_ratio = $max_width1 / $width;
$y_ratio = $max_height1 / $height;
if ( ($width <= $max_width1) && ($height <= $max_height1) ) {
$tn_width = $width;
$tn_height = $height;
}
else if (($x_ratio * $height) < $max_height1) {
$tn_height = ceil($x_ratio * $height);
$tn_width = $max_width1;
}
else {
$tn_width = ceil($y_ratio * $width);
$tn_height = $max_height1;
}
$src = ImageCreateFromJpeg($uploaddir.$_FILES['userfile']['name']);
$dst = ImageCreateTrueColor($tn_width,$tn_height);
ImageCopyResampled ($dst, $src, 0, 0, 0, 0, $tn_width, $tn_height, $width, $height);
ImageJpeg ($dst, $uploaddir.$_FILES['userfile']['name']);
$width=$max_width1;
$height=$max_height1;
// KONIEC TWORZENIA MAX
$zdj = $_FILES['userfile']['name'];
}else {$zdj = $_FILES['userfile']['name'];}
}else { echo "<p align=center class='info>Ten typ pliku nie jest obslugiwany :-(<br></p>"; }
?>[/php:1:3871640016]
Formularz za pomoca ktorego przekazywane jest zdjecie :
Kod
<form enctype="multipart/form-data" action="admin.php?w=2&spr=1" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="3000000">
Wybierz zdjęcie: <input name="userfile" type="file">
<input type="submit" value="OK">
</form>
<input type="hidden" name="MAX_FILE_SIZE" value="3000000">
Wybierz zdjęcie: <input name="userfile" type="file">
<input type="submit" value="OK">
</form>
Bede wdzieczny za podpowiedzi