Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не работает сценарий загрузки изображения

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
tegs
Отправлено: 24 Марта, 2014 - 20:04:20
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Здравствуйте! Подскажи пожалуйста! Ошибка: Parse error: syntax error, unexpected T_VARIABLE in Z:\home\aliens\www\downloadfile.php on line 9

CODE (html):
скопировать код в буфер обмена
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title></title>
  6. </head>
  7. <body>
  8.  
  9. <form action="downloadfile.php" enctype='multipart/form-data' method="post">
  10. <table>
  11.         <tr>
  12.                 <td>Download your picture:</td>
  13.         </tr>
  14.         <tr>
  15.                 <td><input type="file" name="file" accept="image/*"></td>
  16.         </tr>
  17.         <tr>
  18.                 <td><input type="submit" name="submit" value="Download!"></td>
  19.         </tr>
  20. </table>
  21. </form>
  22. </body>
  23. </html>



PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. if($_POST['submit']) {
  4.         $file = $_FILES['file']['tmp_name'];
  5.         define('F_UPL', 'images\');
  6.         $target = F_UPL.$file;
  7.         move_uploaded_file ($file, $target);
  8.         $dbc = mysqli_connect("localhost:3307", "root", "yy123y", "elvis_store") or die("cant connect to DB");
  9.         $query = "INSERT INTO gwdb VALUES('$file')";
  10.         mysqli_query($dbc, $query) or die(mysqli_error($dbc));
  11.         mysqli_close($dbc);
  12.         echo "Your file downloaded sucesfully!";
  13.        
  14. } else {
  15.         echo "Cant download file :(";
  16. }
  17. ?>
 
 Top
Исильдур
Отправлено: 24 Марта, 2014 - 20:11:40
Post Id


Гость


Покинул форум
Сообщений всего: 68
Дата рег-ции: Март 2012  


Помог: 1 раз(а)




tegs
Обратный слэш в 5 строке уберите.
 
 Top
tegs
Отправлено: 24 Марта, 2014 - 20:17:13
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Исильдур пишет:
tegs
Обратный слэш в 5 строке уберите.


Убрал. Вот что выдало теперь:
Warning: move_uploaded_file(imagesZ:\tmp\php1605.tmp) [function.move-uploaded-file]: failed to open stream: Invalid argument in Z:\home\aliens\www\downloadfile.php on line 7

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'Z:\tmp\php1605.tmp' to 'imagesZ:\tmp\php1605.tmp' in Z:\home\aliens\www\downloadfile.php on line 7
Your file downloaded sucesfully!
 
 Top
Исильдур
Отправлено: 24 Марта, 2014 - 20:27:57
Post Id


Гость


Покинул форум
Сообщений всего: 68
Дата рег-ции: Март 2012  


Помог: 1 раз(а)




tegs
Вы сообщения об ошибках читаете?
tegs пишет:
Unable to move 'Z:\tmp\php1605.tmp' to 'imagesZ:\tmp\php1605.tmp'

Не может переместить потому что imagesZ:\tmp\php1605.tmp не существует.
 
 Top
tegs
Отправлено: 24 Марта, 2014 - 20:40:22
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Исильдур пишет:
tegs
Вы сообщения об ошибках читаете?
tegs пишет:
Unable to move 'Z:\tmp\php1605.tmp' to 'imagesZ:\tmp\php1605.tmp'

Не может переместить потому что imagesZ:\tmp\php1605.tmp не существует.


Да, я предпологал что в этом дело, но я немогу понять, где мне папку images создать что бы в нее сохраняло? Оно почему-то ее выносит перед диском Z: imagesZ:\tmp\php1605.tmp
 
 Top
Исильдур
Отправлено: 24 Марта, 2014 - 20:47:36
Post Id


Гость


Покинул форум
Сообщений всего: 68
Дата рег-ции: Март 2012  


Помог: 1 раз(а)




tegs пишет:
Оно почему-то ее выносит перед диском Z: imagesZ:\tmp\php1605.tmp


Вы же сами ее туда конкатенировали.
Я не знаю где вы хотите создать папку images, попробуйте создать в корне.
PHP:
скопировать код в буфер обмена
  1. $target = $_SERVER['DOCUMENT_ROOT'] . F_UPL;
 
 Top
tegs
Отправлено: 24 Марта, 2014 - 21:02:21
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Исильдур пишет:
tegs пишет:
Оно почему-то ее выносит перед диском Z: imagesZ:\tmp\php1605.tmp


Вы же сами ее туда конкатенировали.
Я не знаю где вы хотите создать папку images, попробуйте создать в корне.
PHP:
скопировать код в буфер обмена
  1. $target = $_SERVER['DOCUMENT_ROOT'] . F_UPL;


Выдало это. Как такое может быть?
Table 'elvis_store.gwdb' doesn't exist
Прикрепил файл со скрином БД.
На скрине у меня выбрана другая таблица, у таблицы gwdb только 1 колонка для $file.
Прикреплено изображение (Нажмите для увеличения)
Безымянный.JPG

(Отредактировано автором: 24 Марта, 2014 - 21:09:56)

 
 Top
Исильдур
Отправлено: 24 Марта, 2014 - 21:10:29
Post Id


Гость


Покинул форум
Сообщений всего: 68
Дата рег-ции: Март 2012  


Помог: 1 раз(а)




tegs
PHP:
скопировать код в буфер обмена
  1.  $query = "INSERT INTO gwdb VALUES('$file')";

А в какие поля и какие данные Вы записываете?
Синтаксис: INSERT INTO tbl_name (col1,col2) VALUES(15,col2);
 
 Top
tegs
Отправлено: 24 Марта, 2014 - 21:30:37
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Исильдур пишет:
tegs
PHP:
скопировать код в буфер обмена
  1.  $query = "INSERT INTO gwdb VALUES('$file')";

А в какие поля и какие данные Вы записываете?
Синтаксис: INSERT INTO tbl_name (col1,col2) VALUES(15,col2);


Поле VARCHAR. Хочу что бы сохраняло имя файла в БД в 1 колонке и сам файл в папке. Пересоздал таблицу, в БД сохраняет, а в папку файл не записывает. Проверил корневые папки Z:\home\aliens\www\images и C:\home\aliens\www\images они пустые. Вот скрин что получилось.
Прикреплено изображение (Нажмите для увеличения)
Безымянный1.JPG
 
 Top
Исильдур
Отправлено: 24 Марта, 2014 - 21:33:35
Post Id


Гость


Покинул форум
Сообщений всего: 68
Дата рег-ции: Март 2012  


Помог: 1 раз(а)




tegs пишет:
Пересоздал таблицу, в БД сохраняет, а в папку файл не записывает.

Ошибки какие нибудь выдает?
Папка images доступна на запись?
 
 Top
tegs
Отправлено: 24 Марта, 2014 - 23:09:31
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Исильдур пишет:
tegs пишет:
Пересоздал таблицу, в БД сохраняет, а в папку файл не записывает.

Ошибки какие нибудь выдает?
Папка images доступна на запись?


Ошибок никаких невыдает, скрипт работает. В БД как я понимаю сохраняет имена временных файлов в сам файл не сохраняет в корневой каталог Z:\home\localhost\aliens\www.
Что вы имеете ввиду доступна на запись?
 
 Top
Исильдур
Отправлено: 25 Марта, 2014 - 09:37:32
Post Id


Гость


Покинул форум
Сообщений всего: 68
Дата рег-ции: Март 2012  


Помог: 1 раз(а)




tegs пишет:
Ошибок никаких невыдает, скрипт работает.

Как раз НЕ работатет.
В папке www создаете папку images.
Здесь же в www у вас лежит скрипт загрузки изображений.
Меняете
PHP:
скопировать код в буфер обмена
  1. move_uploaded_file ($file, "images/{$_FILES['file']['name']}");
 
 Top
tegs
Отправлено: 25 Марта, 2014 - 18:31:50
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Выдает:
Parse error: syntax error, unexpected T_VARIABLE in Z:\home\aliens\www\downloadfile.php on line 9

Немного подправил:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. ini_set('display_errors', 'on');
  3. if($_POST['submit']) {
  4.         $file = $_FILES['file']['tmp_name'];
  5.         define('F_UPL', 'images');
  6.         $target = $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . F_UPL;
  7.         move_uploaded_file ($file, $target);
  8.         $dbc = mysqli_connect("localhost:3307", "root", "yy123y", "elvis_store") or die("cant connect to DB");
  9.         $query = "INSERT INTO gwdb VALUES('$file')";
  10.         mysqli_query($dbc, $query) or die(mysqli_error($dbc));
  11.         mysqli_close($dbc);
  12.         echo "Your file downloaded sucesfully!";
  13.        
  14. } else {
  15.         echo "Cant download file :(";
  16. }
  17. ?>


Стало выдавать:
Warning: move_uploaded_file() [function.move-uploaded-file]: The second argument to copy() function cannot be a directory in Z:\home\aliens\www\downloadfile.php on line 8

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'Z:\tmp\php1B50.tmp' to 'Z:/home/aliens/www\images' in Z:\home\aliens\www\downloadfile.php on line 8
Your file downloaded sucesfully!

(Отредактировано автором: 25 Марта, 2014 - 18:34:44)

 
 Top
Исильдур
Отправлено: 25 Марта, 2014 - 18:34:27
Post Id


Гость


Покинул форум
Сообщений всего: 68
Дата рег-ции: Март 2012  


Помог: 1 раз(а)




tegs пишет:
Что вы имеете ввиду доступна на запись?

Если Вы на Денвере работаете, то с правами скорее всего все ок.
Ищите причину в другом.
 
 Top
tegs
Отправлено: 25 Марта, 2014 - 19:07:17
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Исильдур пишет:
tegs пишет:
Что вы имеете ввиду доступна на запись?

Если Вы на Денвере работаете, то с правами скорее всего все ок.
Ищите причину в другом.


Все, заработало! )) Чаще заходите на php.net, люди ))
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB