Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z tworzeniem miniaturek
Forum PHP.pl > Forum > PHP
satch83
Hej!

Czy moglibyście spojrzeć na poniższy kod. Niby wszystko jest dobrze ale nie tworzy miniatur po załadowaniu zdjęć na serwer.

CODE

<?php
require_once('config.php');

ini_set( 'display_errors', 'On' );
error_reporting( E_ALL );
$name1 = $_FILES['img0']['name'];
$name2 = $_FILES['img1']['name'];
$name3 = $_FILES['img2']['name'];
$name4 = $_FILES['img3']['name'];
$name5 = $_FILES['img4']['name'];
$name6 = $_FILES['img5']['name'];
$name7 = $_FILES['img6']['name'];
$name8 = $_FILES['img7']['name'];
$name9 = $_FILES['img8']['name'];
$name10 =$_FILES['img9']['name'];
$name11 =$_FILES['plik1']['name'];

$sql3="INSERT INTO produkt_uzywany values ('','$_POST[typ_pojazdu]','$_POST[marka]', '$_POST[model]', '$_POST[rocznik]', '$_POST[cena]', '$_POST[waluta]','$_POST[kod]', '$_POST[przebieg]','$_POST[ladownosc]','$_POST[wymiar]','$_POST[waga]','$_POST[paliwo]','$_POST[nadwozie]','$_POST[pojemnosc]','$_POST[moc]','$_POST[liczba_m]','$_POST[naped]','$_POST[kolor]','$_POST[data_dodania]','$_POST[status]','$_POST[stan]',
'$name1', '$name2','$name3','$name4','$name5','$name6','$name7','$name8','$name9','$name10','$name11','$_POST[opis1]', '$_POST[opis2]')";




$err = false;
for ($i=0; $i<10; $i++)
if ($_FILES['img'.$i]['tmp_name'] && !is_uploaded_file($_FILES['img'.$i]['tmp_name'])) {
echo "Plik ". $_FILES['img'.$i]['name'] ." NIE został załadowany na serwer prawidłowo.
\n";
$err = true;
}

if ($err) {
echo "Nie można dodać ogłoszenia do bazy danych! Nie wszystkie pliki zostały wgrane!
";
echo "Wstecz";
} else {
for ($i=0; $i<10; $i++) {

if ($_FILES['img'.$i]['tmp_name'] &&
!move_uploaded_file($_FILES['img'.$i]['tmp_name'], '../images/uzywane/big/'.basename($_FILES['img'.$i]['name']))) {

echo "Wystąpił problem przy przenoszeniu zdjęć do odpowiedniego katalogu. Prawdopodobnie źle ustawione prawa katalogu!";
echo "Wstecz";
die;
}


}
move_uploaded_file($_FILES['plik1']['tmp_name'], '../pliki/'.basename($_FILES['plik1']['name']));




if (mysql_query($sql3,$polaczenie)) {
echo "Pliki załadowane. Próbuję stworzyć miniatury...
";
//Przypisujemy do zmiennej $img_path ścieżke do obrazka

$miniatura=array();

for ($k=0; $k<10; $k++) {
$z=$name[$k];
$img_path = "../images/uzywane/big/$z";
$fol_miniaturki="../images/uzywane/small/";
//Tworzymy scieżkę do miniaturki
$thumb_path = substr($img_path,0,strrpos($fol_miniaturki,'.')).'_min.jpg';

//ustalamy maksymalny dopuszczalny rozmiar miniatury
$max_width=132;
$max_height=90;

//Sprawdzamy czy obraz istnieje
if(!file_exists($img_path))die('Plik obrazu nie istnieje

');

//Pobieramy informacje o obrazie
$img_attr = getimagesize($img_path);

//Sprawdzamy czy obraz jest wiekszy na szerokość czy na wysokość
// i zmniejszamy odpowiednio rozmiar
// $img_attr[0] - szerokosc, $img_attr[1] - wysokość
if($img_attr[0]>$img_attr[1]){
$scale = $img_attr[0] / $max_width;
}else{
$scale = $img_attr[1] / $max_height;
}

//Tworzymy obraz miniaturki
$w = floor($img_attr[0]/$scale);
$h = floor($img_attr[1]/$scale);
$thumb = imagecreatetruecolor($w,$h);
$src=imagecreatefromjpeg($img_path);

//Kopiujemy obraz pomniejszajac go,
imagecopyresampled($thumb, $src, 0, 0, 0, 0, $w, $h, $img_attr[0], $img_attr[1]);

//Zapisujemy do pliku (jakość 85)
imagejpeg($thumb,$thumb_path,85);
$miniatura[$k]=$thumb_path;
imagedestroy($thumb);
imagedestroy($src);
}}
while (!empty($miniatura)){
$img_min_1=$miniatura[0];
$img_min_2=$miniatura[1];
$img_min_3=$miniatura[2];
$img_min_4=$miniatura[3];
$img_min_5=$miniatura[4];
$img_min_6=$miniatura[5];
$img_min_7=$miniatura[6];
$img_min_8=$miniatura[7];
$img_min_9=$miniatura[8];
$img_min_10=$miniatura[9];
}

$sql4="INSERT INTO produkt_uzywany_miniatury values ('','$img_min_1','$img_min_2','$img_min_3','$img_min_4',
'$img_min_5','$img_min_6','$img_min_7','$img_min_8','$img_min_9','$img_min_10')";

if (mysql_query($sql4,$polaczenie)) {
echo "Dodano ogłoszenie!
";


} else {
echo "Pliki załadowano poprawnie, nie można dodać ogłoszenia do bazy danych!";

}
}

?>


jeśli ktoś z Was wie czemu to nie działa dajcie znać proszę...
Lejto
włącz bbcode
bim2
@up Nie baw się w moderatora, tylko raportuj.

@topic
Jakie błędy? Wrózka na wakacjach snitch.gif
Cysiaczek
@Lejto
No i co to ma być? Znów zabawa w moderatora? +10 do poziomu ostrzeżeń, bo to już kolejne wykroczenie ostatnio.

@satch83 - dodaj bbcode i podaj komunikaty błędów. Jak wspomniał ~bim2 - szanuj czas forumowiczów - nie każ im zgadywać, podawaj maksimum informacji.

Pozdrawiam.

na drugi dzień...
Miałeś czas na poprawienie - zamykam, zgłoś się poprzez PW, to ktoś otworzy
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.