ok
dodaj.php
<?php
//(c) Lukasz Ogan, 2008 : All Rights Reserved
$opis = $_POST['opis'];
$data = date('d.m.y H:i:s'); ?>
<style>
#bad{color:#FF3300; font-size:11px; font-weight:bold; text-align:center;}
</style>
<?
if(!empty($_POST['obraz'])) {
die ("<span id=bad>Wskaż plik do wysłania</span><br> <span id=href4><a href=index.php?co=add_image>Wstecz</a></span>
");
}
//ustala typ mime pliku i tworzy odpowiedni prefix dla funkcji GD
$typ_pliku = $_FILES['obraz']['type'];
switch($typ_pliku)
{
case 'image/jpeg':
$pref_gd = "jpeg";
break;
case 'image/jpg':
$pref_gd = "jpg";
break;
case 'image/png':
$pref_gd = "png";
break;
case 'image/pjpeg':
$pref_gd = "jpeg";
break;
}
$nazwa1 = date("His");//wykorzystanie daty do wygenerowania nowej nazwy dla pliku $nazwa2 = $_FILES['obraz']['name'];//pobranie nazwy pliku z tablicy
$nazwa_zmieniona = "$nazwa1$nazwa2";//połączenie daty z nazwą pliku
//zamienia polskie litery z języczkami aby nie znalazły się w nazwie fotki
$nazwapliku = $_FILES['obraz']['name'];
$nazwapliku1 = explode('.', $nazwapliku); $np = count($nazwapliku1); $count = $np -1;
try
{
if($nazwapliku1[$count]<>"jpg" && $nazwapliku1[$count]<>"png" &&
$nazwapliku1[$count]<>"BMP" && $nazwapliku1[$count]<>"bmp" &&
$nazwapliku1[$count]<>"gif" && $nazwapliku1[$count]<>"img" &&
$nazwapliku1[$count]<>"JPG" && $nazwapliku1[$count]<>"PNG" &&
$nazwapliku1[$count]<>"GIF" && $nazwapliku1[$count]<>"IMG")
{
die ("<span id=bad>Nie możesz wgrywać innych plików niż jpg, png, gif, img, bmp</span><br> <span id=href4><a href=index.php?co=add_image>Wstecz</a></span>
");
}
if($HTTP_POST_FILES["obraz"]["size"] > 1024 * 1024)
{
die("<b>BŁĄD: Rozmiar pliku przekracza dopuszczalny limit 1MB!</b>"); }
$file = "./galeria_users/obrazy/".$nazwa_zmieniona."";
if(move_uploaded_file($_FILES['obraz']['tmp_name'],"./galeria_users/obrazy/".$nazwa_zmieniona)) {
chmod($file, 0755);
if(file_exists("./galeria_users/obrazy/".$nazwa_zmieniona)) {
include("./galeria_users/create_min.php");
}
$dodal = $_SESSION['prawid_uzyt'];
$zapytaj = mysql_query("select * from uzytkownik where user = '".$dodal."'");
$numer = $row->id;
$sql = "insert into galeria_users (obraz,data_dodania,dodal,numer,opis)
values ('".$nazwa_zmieniona."', '".$data."', '".$dodal."', '".$numer."','".$opis."')";
echo "<center><b><font size='3px' color='blue'>Zdjęcie pomyślnie wgrane na serwer!</font><br>"; echo "<span id=\"href3\"><a href='?co=add_image'>Dodaj nowe zdjęcie</a></b></center>"; echo "<center><span id=\"href5\"><b><a href='?kto=pokaz_galeria&id=$numer'>Do galerii</a></b></center>";
}
else
{
switch($_FILES['obraz']['error'])
{
case 1
: echo ('Przesłany plik jest większy niż zezwala konfiguracja serwera.'); break;
case 2
: echo ('Przesłany plik jest wiekszy niż zezwala formularz.'); break;
case 3
: echo ('Przesłano tylko część pliku.'); break;
case 4
: echo ('Plik nie został przesłany.'); break;
}
}
}
catch (Exception $e)
{
}
create_min.php
<!-- skrypt odpowiedzialny za przetwarzanie zdjęć -->
<?
//Tworzy miniaturę
$obrazek_minn = "$nazwa_zmieniona";
$max_width = 150;//default 150
$max_height = 113;//default 300
$width = $size[0];
$height = $size[1];
$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;
}
$func_plus_prefix_1 = "ImageCreateFrom".$pref_gd;
$func_plus_prefix_2 = "image".$pref_gd;
$src = @$func_plus_prefix_1($file);
$dst = @imagecreatetruecolor($tn_width, $tn_height);
@imagecopyresampled($dst, $src, 0, 0, 0, 0, $tn_width, $tn_height, $width, $height);
//Header('Content-type: image/jpeg');
@$func_plus_prefix_2($dst, "./miniatury/".$obrazek_minn, 100);
//koniec tworzenia miniatury
?>