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
Форумы портала PHP.SU :: Версия для печати :: upload изображений
Форумы портала PHP.SU » » Если скрипт не работает » upload изображений

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

1. MadMike - 25 Сентября, 2012 - 17:28:50 - перейти к сообщению
Не могу написать скрипт загрузки изображений Белый флаг
Вот что имею сейчас:

CODE (html):
скопировать код в буфер обмена
  1. <form enctype='multipart/form-data' action='upload.php'  method=post>
  2. <input type=file name="userfile" >
  3. <input type=submit value="Сохранить">
  4. </form>

Файл upload.php:

PHP:
скопировать код в буфер обмена
  1. $uploaddir = "/images/receipts/";
  2.  
  3. $temp=$_FILES['userfile']['name'];
  4.  
  5. $uploadfile = $uploaddir . $temp;
  6.  
  7. move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile);
  8.  
  9.  
  10. $date=date('j_F_Y_h_i_s');
  11. $url="upload_$date.jpg";
  12. $img=$uploaddir.$url;
2. zypikov - 25 Сентября, 2012 - 18:17:33 - перейти к сообщению
Так в чем именно проблема?
3. MadMike - 25 Сентября, 2012 - 19:54:33 - перейти к сообщению
[quote=zypikov][/quote]
после выбора картинки и нажатия "Загрузить" выдает ошибку 500 - Представление не найдено [name, type, prefix]: article, php, contentView
4. Vinyl - 25 Сентября, 2012 - 21:56:31 - перейти к сообщению
Не
PHP:
скопировать код в буфер обмена
  1. $uploaddir = "/images/receipts/";

а
PHP:
скопировать код в буфер обмена
  1. $uploaddir = "images/receipts/";
- это если у Вас upload.php в корне сайта, а если нет, то можно указать либо полный путь к каталогу с "/home/user/www/images/receipts/" (или как у Вас там от корня...), либо относительный с "../"
5. DelphinPRO - 25 Сентября, 2012 - 23:04:15 - перейти к сообщению
сильно на joomla похоже )
и скорее всего не находит upload.php по указанному адресу. Если он в корне лежит укажи абсолютный url



по поводу $uploaddir уже высказались. Путь нужно указывать от корня сайта. в joomla для этого есть константа, JPATH_BASE по моему
хотя файлик сам по себе, судя по всему, тогда, если он в корне, так:

PHP:
скопировать код в буфер обмена
  1. $uploaddir = dirname(__FILE__)."/images/receipts/";


---
а по хорошему лучше бы компонентик наваять, и загружать файлы с использованием API джумлы.
6. MadMike - 26 Сентября, 2012 - 11:48:28 - перейти к сообщению
upload.php лежит рядом с файлом в котором форма загрузки
7. DelphinPRO - 26 Сентября, 2012 - 12:45:28 - перейти к сообщению
Это мало о чем говорит.
лучше скажите в какой папке он лежит относительно корня сайта
(Добавление)
про джумлу я угадал?
8. MadMike - 26 Сентября, 2012 - 14:52:16 - перейти к сообщению
[quote=DelphinPRO][/quote]
про joomla угадал... Радость
оба файла лежат в папке /home/gorunov/work.tspu.ru/www/p ortfolio2/zzz
9. DelphinPRO - 26 Сентября, 2012 - 16:18:32 - перейти к сообщению
ну значит в форме нужно писать соответствующий путь

CODE (html):
скопировать код в буфер обмена
  1. <form action='/portfolio2/zzz/upload.php' enctype='multipart/form-data' method=post>

(Добавление)
у тебя 500 ошибку генерит джумла, потому что если обращаться к несуществующему файлу, запрос будет перенаправлен на index.php и обработан системой. А вы как раз и обращаетесь к несуществующему файлу указывая action="upload.php". В запросе не передаются необходимые для CMS переменные. Отсюда ошибка.
Так что если файл работает вне джумлы, указывайте полный путь в url (от корня сайта - папка www)
10. jercy - 07 Января, 2014 - 15:38:27 - перейти к сообщению

оу блин ... я по форумам Джумлы этот ответ уже три дня ищу!

Спасибо автору за вопрос и форумчанам за ответ! Решил свою аналогичную проблему!

 

Powered by ExBB FM 1.0 RC1