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 :: Версия для печати :: Не заполняется массив $_FILES
Форумы портала PHP.SU » » HTTP и PHP » Не заполняется массив $_FILES

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

1. eramar - 09 Августа, 2011 - 10:41:51 - перейти к сообщению
Здравствуйте, возникла проблема:
у меня есть форма для загрузки файла:
<label>Фотография:</label>
<input type="file" name="fupload">

if(!empty($_POST['fupload']))
{
$fupload = $_FILES['fupload']['name'];
$ferr= $_FILES['fupload']['error'];
}

в переменные ничего не записывается, массив _$FILES пустой, выводит ошибку:
Notice: Undefined index: fupload in D:\Apache2\htdocs\rowday.ru\update_user.php on line 136

помогите, пожалуйста!
2. Мелкий - 09 Августа, 2011 - 10:46:01 - перейти к сообщению
Внимательно почитайте http://php.su/phphttp/?uploads , самое начало.
3. illy - 09 Августа, 2011 - 11:04:21 - перейти к сообщению
photo.html
CODE (html):
скопировать код в буфер обмена
  1. <style>
  2. .ai:link,.ai:active ,.ai:visited ,.ai:hover {padding:3;background-color:#2993C1;color:#ffffff;border:0px solid #D0DBE1;cursor:hand;font-weight:none;font-family:arial;font-size:13px;text-decoration:none}
  3. .image_list {color:#000000;font-weight:none;font-family:arial;font-size:13px;text-decoration:none}
  4. </style>
  5.  
  6. <font id=image_list class=image_list></font>
  7. <br>
  8. <form id=sp target=p_a action=p_a.php method=POST enctype="multipart/form-data">
  9. <font class=photo>Фото:</font>
  10. <input id=gfile class=p_i type=File name=ufile size=20>
  11. <input type=hidden name=act value=upf>
  12. &nbsp;&nbsp;<a class=ai href="javascript:with(document.getElementById('sp')){submit()}"> Загрузить </a>
  13. </form>
  14. <iframe name=p_a frameborder=0 src=p_a.php width=0 height=0 scrolling=no></iframe>

p_a.php
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $w=500; // Ширина уменьшеного фото
  4. $nh=375; // Высота уменьшеного фото
  5. $size=500; // Максимальный вес фото в киллобайтах, если её размеры меньше 500*375. Например, если грузят анимацию gif размером 50*35, но весит она 1мб
  6. $dir='Photo/'; // Папка для сохранения фото (не менять)
  7. $tt='Ваше фото по размерам меньше '.$w.'*'.$nh.', но весит больше '.$size.' кб';
  8.  
  9. $sd=strtolower($_FILES['ufile']['name']);
  10.  
  11. if ($_POST['act']=="upf" && $_FILES['ufile']['name']<>'' && (preg_match("/\.jpg$/",$sd) or preg_match("/\.png$/",$sd) or preg_match("/\.gif$/",$sd))) {
  12.  
  13. $s=GetImageSize($_FILES['ufile']['tmp_name']) or exit;
  14. $na=substr(time(),3,9).substr(sprintf('%.3f',microtime()),2,4);
  15. $t=preg_replace('/(.*)(.{4})$/','\2',$sd);
  16.  
  17. $sf=$_FILES['ufile']['size']/1024;
  18.  
  19. if($s[0]<=$w && $s[1]<=$nh && $sf<$size){
  20. copy($_FILES['ufile']['tmp_name'], $dir.$na.$t);
  21. echo "<script>parent.document.getElementById('image_list').innerHTML+=' $na$t';</script>";
  22. }
  23. if($s[0]<=$w && $s[1]<=$nh && $sf>$size){
  24. echo "<script>alert('".$tt."');</script>";
  25. }
  26.  
  27. $sn=$_FILES['ufile']['tmp_name'];
  28.  
  29. if(preg_match("/\.png$/",$sd)){
  30. }
  31. if(preg_match("/\.jpg$/",$sd)){
  32. }
  33. if(preg_match("/\.gif$/",$sd)){
  34. }
  35. $k=$s[0]/$w;
  36. $h=ceil($s[1]/$k);
  37. if($h>$nh){
  38. $kh=$h/$nh;
  39. $h=$nh;
  40. $w=ceil($w/$kh);
  41. }
  42. imageSaveAlpha($d,true);
  43. imagecopyresampled($d,$p,0,0,0,0,$w,$h,$s[0],$s[1]);
  44. imagejpeg($d,$dir.$na.'.jpg');
  45. echo "<script>parent.document.getElementById('image_list').innerHTML+=' $na.jpg';</script>";
  46. }
  47. else {exit;}
  48. ?>
  49.  


папка Photo
4. SAD - 09 Августа, 2011 - 11:07:05 - перейти к сообщению

illy, я не пойму что вы делаете. вы пытаетесь ответить по теме и не по теме, и вообще неверно. еще раз такое повторится, придется будет приостановить вас

(Добавление)
вам же дали ссылку, почему вы не читаете или невнимательно читаете?
5. eramar - 09 Августа, 2011 - 11:35:55 - перейти к сообщению
Я внимательно прочитал ссылку.
у меня проблема с временной папкой.
Zend Server установлен в D:\ZendServer
там я создал папку D:\ZendServer\tmp

в настройках File Uploads в поле upload_tmp_dir я указал папку D:\ZendServer\tmp
register_globals установлено в on
перезапустил сервер, но массив $_FILES все равно не заполняется.
Помогите, пожалуйста.
6. illy - 09 Августа, 2011 - 11:53:00 - перейти к сообщению
eramar пишет:
в настройках File Uploads в поле upload_tmp_dir я указал папку D:\ZendServer\tmp

а если просто tmp ? Закатив глазки
7. OrmaJever - 09 Августа, 2011 - 11:59:25 - перейти к сообщению
eramar почму вы решили что проблема в папке? можно проблема в форме? Однако
8. eramar - 09 Августа, 2011 - 12:00:05 - перейти к сообщению
проблема была в папке, нужно было указать /tmp
заработало Улыбка
9. illy - 09 Августа, 2011 - 12:12:25 - перейти к сообщению
eramar пишет:
проблема была в папке, нужно было указать /tmp
заработало

Ну рад был помоч Ха-ха
Будут проблемы - пишите Хорошо

 

Powered by ExBB FM 1.0 RC1