[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: проблема с загрузкой изображений на сайт
сашаяц
Мой html код. работает все, кроме этапа загрузки изображений на сайт. ни в базе, ни в папке где хранятся изображения нету результата(
<div class="center">
<?PHP
if(isset($_SESSION['answer'])){
echo $_SESSION['answer'];
unset($_SESSION['answer']);
}
if(isset($_SESSION['add_towar']['res'])){
echo $_SESSION['add_towar']['res'];
unset($_SESSION['add_towar']['res']);
}

?>

<p class="title">Магазин</p>
<
p class="title">Добовление товара</p>

<
form method="post">
<
p>
Загрузить картинку
<!----------<div class="mask-wrapper">
<
div class="mask">
<
input class="fileInputText" type="text" disabled >
<
button class="send-file">Обзор</button>
</
div>
<
input id="my_file" class="custom-file-input" type="file" name="baseimg" required >
</
div></p>
------>

<
input name="baseimg" type="file"/>
<
div class="dioi">

<
div class="vbced">

<
p>
Название
<input name="name" type="text" id="myname" required />
</
p>

<
p>
Размер
<input name="razmer" type="text" required />
</
p>

<
p>
Цвет
<input name="anons" type="text" required />
</
p>


<
p>
Цена
<input name="price" id="txtbox" type="text" required />
</
p>



<
p>
Количество
<input name="kol_vo" id="txtboxx" type="text" required />
</
p>
</
div>
<
div class="cdewsx">
<
p>
Категория

<select name="gorods_brandid" type="text">
<?PHP foreach($cat as $key => $item) : ?>


<?
PHP if(count($item) > 0):?>

<option value="<?=$key?>"><?=$item[0]?></option>
<?PHP endif;?>
<?
PHP endforeach;?>

<option value="1">Да</option>
</
select>
</
p>


<
p>
Скидки

<select name="sale" type="text">
<
option value="0">Нет</option>
<
option value="1">Да</option>
</
select>
</
p>

<
p>
Новое

<select name="new" type="text">
<
option value="1">Да</option>
<
option value="0">Нет</option>

</
select>
</
p>



<
p>
Отображать на сайте?

<
select name="visible" type="text">
<
option value="1">Да</option>
<
option value="0">Нет</option>

</
select>
</
p>
<
p>
Отображать на главной странице.

<
select name="magaz" type="text">
<
option value="1">Да</option>

</
select>
</
p>


</
div>
</
div>







<
div class="qweqqwq"></div>




<
p>
Описание на сайте


<textarea id="editor1" class="full-text" name="description" ></textarea>
<
script type="text/javascript">
CKEDITOR.replace( 'editor1' );
</
script>

</
p>


















<
span class="knopka"> <input type="image" value="Сохранить" /> </span>






</
div>
</
form>
<
script>$('#txtbox').bind("change keyup input click", function() {
if (this.value.match(/[^0-9]/g)) {
this.value = this.value.replace(/[^0-9]/g, '');
}
}
);
</
script>
<
script>$('#txtboxx').bind("change keyup input click", function() {
if (this.value.match(/[^0-9]/g)) {
this.value = this.value.replace(/[^0-9]/g, '');
}
}
);

$(document).ready(function(){
$('#myname').keyup( function() {
var $this = $(this);
if($this.val().length > 14)
$this.val($this.val().substr(0, 14));
});
});


$(document).ready(function(){
$('#txtboxx').keyup( function() {
var $this = $(this);
if($this.val().length > 2)
$this.val($this.val().substr(0, 2));
});
});
$(document).ready(function(){
$('#txtbox').keyup( function() {
var $this = $(this);
if($this.val().length > 4)
$this.val($this.val().substr(0, 4));
});
});

</
script>



функция загрузки изображений



function resize($target, $dest, $wmax, $hmax, $ext){
/*
$target - путь к оригинальному файлу
$dest - путь сохранения обработанного файла
$wmax - максимальная ширина
$hmax - максимальная высота
$ext - расширение файла
*/

list($w_orig, $h_orig) = getimagesize($target);
$ratio = $w_orig / $h_orig; // =1 - квадрат, <1 - альбомная, >1 - книжная

if(($wmax / $hmax) > $ratio){
$wmax = $hmax * $ratio;
}else{
$hmax = $wmax / $ratio;
}

$img = "";
// imagecreatefromjpeg | imagecreatefromgif | imagecreatefrompng
switch($ext){
case("gif"):
$img = imagecreatefromgif($target);
break;
case("png"):
$img = imagecreatefrompng($target);
break;
default:
$img = imagecreatefromjpeg($target);
}
$newImg = imagecreatetruecolor($wmax, $hmax); // создаем оболочку для новой картинки

if($ext == "png"){
imagesavealpha($newImg, true); // сохранение альфа канала
$transPng = imagecolorallocatealpha($newImg,0,0,0,127); // добавляем прозрачность
imagefill($newImg, 0, 0, $transPng); // заливка
}

imagecopyresampled($newImg, $img, 0, 0, 0, 0, $wmax, $hmax, $w_orig, $h_orig); // копируем и ресайзим изображение
switch($ext){
case("gif"):
imagegif($newImg, $dest);
break;
case("png"):
imagepng($newImg, $dest);
break;
default:
imagejpeg($newImg, $dest);
}
imagedestroy($newImg);
}
/* ===Ресайз картинок=== */





модель

function add_towar(){
$name = clear_admin(trim($_POST['name']));
$description = clear_admin(trim($_POST['description']));
$gorods_brandid = clear_admin(trim($_POST['gorods_brandid']));
$anons = clear_admin(trim($_POST['anons']));
$visible = clear_admin(trim($_POST['visible']));
$magaz = clear_admin(trim($_POST['magaz']));
$new = clear_admin(trim($_POST['new']));
$price = clear_admin(trim($_POST['price']));
$sale = clear_admin(trim($_POST['sale']));
$razmer = clear_admin(trim($_POST['razmer']));
$kol_vo = clear_admin(trim($_POST['kol_vo']));
if(empty($name)){
$_SESSION['add_towar']['res'] = "<div class='error'>Вы не указали название товара</div>";
$_SESSION['add_towar']['description'] = $description;
$_SESSION['add_towar']['anons'] = $anons;
$_SESSION['add_towar']['gorods_brandid'] = $gorods_brandid;
$_SESSION['add_towar']['visible'] = $visible;
$_SESSION['add_towar']['magaz'] = $magaz;
$_SESSION['add_towar']['price'] = $price;
$_SESSION['add_towar']['new'] = $new;
$_SESSION['add_towar']['sale'] = $sale;
$_SESSION['add_towar']['razmer'] = $razmer;
$_SESSION['add_towar']['kol_vo'] = $kol_vo;

return false;
}else{


$description = clear_admin($description);
$name = clear_admin($name);
$anons = clear_admin($anons);
$gorods_brandid = clear_admin($gorods_brandid);
$magaz = clear_admin($magaz);
$visible = clear_admin($visible);
$price = clear_admin($price);
$sale = clear_admin($sale);
$razmer = clear_admin($razmer);
$kol_vo = clear_admin($kol_vo);
$new = clear_admin($new);
$query = "INSERT INTO goods (name, anons, description, new,
gorods_brandid,magaz,visible,price,sale,razmer,kol_vo)
VALUES ( '
$name', '$anons', '$description','$new',
'
$gorods_brandid','$magaz','$visible','$price','$sale','$razmer','$kol_vo')";
$res = mysql_query($query);









if(mysql_affected_rows() > 0){
$id = mysql_insert_id(); // ID сохраненного товара
$types = array("image/gif", "image/png", "image/jpeg", "image/pjpeg", "image/x-png"); // массив допустимых расширений
/* базовая картинка */

if($_FILES['baseimg']['name']){
$baseimgExt = strtolower(preg_replace("#.+\.([a-z]+)$#i", "$1", $_FILES['baseimg']['name'])); // расширение картинки
$baseimgName = "{$id}.{$baseimgExt}"; // новое имя картинки
$baseimgTmpName = $_FILES['baseimg']['tmp_name']; // временное имя файла
$baseimgSize = $_FILES['baseimg']['size']; // вес файла
$baseimgType = $_FILES['baseimg']['type']; // тип файла
$baseimgError = $_FILES['baseimg']['error']; // 0 - OK, иначе - ошибка
$error = "";

if(!in_array($baseimgType, $types)) $error .= "Допустимые расширения - .gif, .jpg, .png <br />";
if($baseimgSize > SIZE) $error .= "Максимальный вес файла - 1 Мб";
if($baseimgError) $error .= "Ошибка при загрузке файла. Возможно, файл слишком большой";

if(!empty($error)) $_SESSION['answer'] = "<div class='error'>Ошибка при загрузке картинки товара! <br /> {$error}</div>";

// если нет ошибок
if(empty($error)){
if(@move_uploaded_file($baseimgTmpName, "../userfiles/product_img/tmp/$baseimgName")){
resize("../userfiles/product_img/tmp/$baseimgName", "../userfiles/product_img/baseimg/$baseimgName", 120, 185, $baseimgExt);
@unlink("../userfiles/product_img/tmp/$baseimgName");
mysql_query("UPDATE goods SET img = '$baseimgName' WHERE goods_id = $id");
}else{
$_SESSION['answer'] .= "<div class='success'>Не удалось переместить загруженную картинку. Проверьте права на папки в каталоге /userfiles/product_img/</div>";
}
}
}

/* базовая картинка */
/////////////////////////
/* картинки галереи */
/* картинки галереи */

$_SESSION['answer'] .= "<div class='success'>Товар добавлен</div>";
return true;
}else{
$_SESSION['add_towar']['res'] = "<div class='error'>Ошибка при добавлении товара</div>";
return false;
}
}
}
/* ===Добавление товара=== */




контроллер
case('add_towar'):
if($_POST){
if(add_towar()) redirect();
else redirect();
}

break;
помогите пожалуйста найти проблему(
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.