Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 22.07.2013
Сообщений: 8
1

Как добавить инфу в базу с загрузкой фото

15.08.2013, 14:02. Показов 2510. Ответов 5
Метки нет (Все метки)

Всем привет. Есть форма добавления товаров в базу с полями: наименование, стоимость, гарантия, изображение. Есть обработчик, который вставляет INSERTOM. Вопрос в том, что изображение я закачиваю на сайт по ftp, а потом уже, в форме добавления товара прописываю путь. Как сделать загрузку картинки из формы? Есть такой код, он работает, но переменные из текстовых полей не попадают в обработчик:
Форма:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
<form action="upload.php" method="post" enctype="multipart/form-data">
      <p>
        <input type="file" name="filename">
      </p>
      <p>
        <label>Описание</label>
        <input type="text" name="ops" id="ops">
      </p>
      <p><br> 
        <input type="submit" value="Загрузить"><br>
      </p>
      </form>
Обработчик:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 if($_FILES["filename"]["size"] > 1024*3*1024)
   {
     echo ("Размер файла превышает три мегабайта");
     exit;
   }
   // Проверяем загружен ли файл
   if(is_uploaded_file($_FILES["filename"]["tmp_name"]))
   {
     // Если файл загружен успешно, перемещаем его
     // из временной директории в конечную
     move_uploaded_file($_FILES["filename"]["tmp_name"], "img/".$_FILES["filename"]["name"]);
       } else {
      echo("Ошибка загрузки файла");
   }
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.08.2013, 14:02
Ответы с готовыми решениями:

Добавить фото в базу через форму
Как добавить фото в таблицу с полем типа image через *.aspx

Как добавить ВК фото в блок с фото на стене (там где 4 фотки)
Собственно сюда:

PHP+MySQL Как объединить форму загрузки данных с загрузкой фото
Всем доброго времени. Подскажите как объединить форму загрузки фото с формой загрузки данных, с...

Как добавить инфу в Listview
Допустим я нажимаю кнопку &quot;Старт&quot;, и при гуде как сделать чтобы инфа об акке вписывалась в...

5
20 / 19 / 9
Регистрация: 24.05.2011
Сообщений: 89
15.08.2013, 14:09 2
Фото сохраняй в папке, а в базе ссылка на картинку.
1
0 / 0 / 0
Регистрация: 22.07.2013
Сообщений: 8
15.08.2013, 14:29  [ТС] 3
Цитата Сообщение от SvSerg Посмотреть сообщение
Фото сохраняй в папке, а в базе ссылка на картинку.
Я так и делаю, но как сделать так, что бы фото загружать из формы по HTTP?
0
17 / 17 / 6
Регистрация: 08.05.2013
Сообщений: 107
15.08.2013, 14:38 4
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<form action="image_add.php" method="post" enctype="multipart/form-data" name="form2" id="form2">
    <p align="left"> Название:<br>
      
      <input name="name" type="text" id="name" size="30" maxlength="30" />
    </p>
    <p align="left" >
       Фото:<br>
       <input name="pictures" type="file" id="pictures" />
    </p>
    <p align="left">&nbsp;</p>
    <p align="left">
      <input type="submit" name="Submit2" value="Добавить" />
    </p>
  </form>
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
    //данные с формы
  $name=$_POST['name'];
  //загрузка картинки
$uploaddir = 'fonart/';     
    // будем сохранять загружаемые 
    // файлы в эту директорию
$destination = $uploaddir .$_FILES['pictures']['name']; 
        // имя файла оставим неизменным
move_uploaded_file( $_FILES['pictures']['tmp_name'],$destination);
$pictures = $uploaddir .$_FILES['pictures']['name'];
$small_pictures = $uploaddir."s".$_FILES['pictures']['name'];
  
if (empty($name)) 
{
exit ("Вы ввели не всю информацию, венитесь назад и заполните все поля!");
}
 
//Определяем размер фотографии — ширину и высоту
    $size=GetImageSize ($pictures);
    //Создаём новое изображение из «старого»
    $src=ImageCreateFromJPEG ($pictures);
    //Берём числовое значение ширины фотографии, которое мы получили в первой строке и записываем это число в переменную
    $iw=$size[0];
    //Проделываем ту же операцию, что и в предыдущей строке, но только уже с высотой.
    $ih=$size[1];
    //Ширину фотографии делим на 150 т.к. на выходи мы хотим получить фото шириной в 150 пикселей. В результате получаем коэфициент соотношения ширины оригинала с будущей превьюшкой.
    $koe=$iw/150;
    //Делим высоту изображения на коэфициент, полученный в предыдущей строке, и округляем число до целого в большую сторону — в результате получаем высоту нового изображения.
    $new_h=ceil ($ih/$koe);
    //Создаём пустой изображени шириной в 150 пикселей и высотой, которую мы вычислили в предыдущей строке.
    $dst=ImageCreateTrueColor (150, $new_h);
    //Данная функция копирует прямоугольную часть изображения в другое изображение, плавно интерполируя пикселные значения таким образом, что, в частности, уменьшение размера изображения сохранит его чёткость и яркость.
    ImageCopyResampled ($dst, $src, 0, 0, 0, 0, 150, $new_h, ImageSX ($src), ImageSY ($src));
    //Сохраняем полученное изображение в формате JPG
    ImageJPEG ($dst, "$small_pictures", 100);
 
include ("bd.php");
 
$sql = "INSERT INTO fon_art (name,pictures,small_pictures) VALUES('$name','$pictures','$small_pictures')";
 
$result=mysql_query($sql) or die(mysql_error());
 
echo "Картинка добавлена"; 
echo ("<meta http-equiv='refresh' content='0; url=add_image.php'>"); ?>
вот код рабочий изменяйте
1
20 / 19 / 9
Регистрация: 24.05.2011
Сообщений: 89
15.08.2013, 14:51 5
Вот почитайте, по экспериментируйте.
Потеряете немного времени, за-то научитесь
http://php.net/manual/ru/featu... method.php
0
0 / 0 / 0
Регистрация: 22.07.2013
Сообщений: 8
15.08.2013, 15:43  [ТС] 6
Всем спасибо. Все получилось.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.08.2013, 15:43

Как добавить инфу в существующий element в xml
Как добавить инфу в существующий element в xml

Как можно добавить инфу в element xml
Как можно добавить инфу в element но там она уже есть. Когда я добаляю новую инфу туда старая...

Как добавить добавить данные в базу данных посредством LINQ
Как добавить добавить данные в базу данных посредством LINQ to SQL Ошибка: Нарушение...

Помогите с загрузкой фото на сервер(с формы)
Помогите с загрузкой фото на сервер(с формы). Если можно, с комментарием Спасибо


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru