IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Веб-программирование (http://www.imho.ws/forumdisplay.php?f=29)
-   -   (форма)что надо прописать в php для закачки файла на сервер (http://www.imho.ws/showthread.php?t=140744)

kasha 28.07.2009 15:41

(форма)что надо прописать в php для закачки файла на сервер
 
Всем привет, такая ситуация. не могу понять, что мне надо прописать в пхп файле, чтоб закачать ПДФ на сервер(где расположена страничка)

код формы такой:

PHP код:

<body>
<
form id="table" name="table" method="post" enctype="multipart/ form-data" action="processor.php">
  <
label>Firma nimi<br />
  <
input type="text" name="f_name" id="f_name" />
  </
label>
  <
p>
    <
label>Aadress<br />
    <
input type="text" name="object_adr" id="object_adr" />
    </
label>
  </
p>

....

 <
p>
  <
label>File<br />
  <
input type="hidden" name="max_file_size" value="100000">
  <
input type="file" name="userfile">
  </
label>
  </
p>
  <
p>
    <
input type="submit" name="send" id="button" value="Saada" />
  </
p>
</
form>


</
body

код обработчика такой:

PHP код:

<body>

<?

echo "<h3>Результат</h3>"


if (isset(
$f_name) && isset($object_adr) && isset($pindala) && isset($s_akt) && isset($u_akt))
{

$result mysql_query ("INSERT INTO table (f_name,object_adr,pindala,s_akt,u_akt) VALUES ('$f_name','$object_adr','$pindala','$s_akt','$u_akt')");}

$result2=mysql_query("SELECT f_name,object_adr,pindala,s_akt,u_akt FROM table ORDER BY f_name");
$myrow2=mysql_fetch_array($result2);
$a=0;
if (
$result == 'true') {echo "<p>Объект по адресу $object_adr успешно добавлен в базу данных!</p></br>";

}
else {echo 
"<p>Your article was not added!</p>";}

move_uploaded_file($_FILES['userfile']['size'], "/place/to/put/uploaded/file");



echo 
"<a href='index.htm'>Back</a>";
?>

</body>

в связи с этим вопрос. куда летит фаил, в эту дир. /place/to/put/uploaded/file ? Т.к. запись (имя фирмы и т.п.) то в базу добавляется, а вот что с файлом происодит и все что с ним связанно не понимаю.

спасибо.

EvroStandart 29.07.2009 21:24

Хелпы читал?
http://ee2.php.net/manual/en/functio...oaded-file.php

kasha 05.08.2009 15:32

Цитата:

Сообщение от EvroStandart (Сообщение 1666878)

а ты не подскажешь как проверить в обработчике переменную на пустоту, если её тип в форме file:
<input name="document" type="file" />

.т.е. другими словами, если я в обработчике пишу

if ($document =="")
{
echo "Забыли указать документ";
}
else {echo "Все прошло успешно";}

то страница обработчик почему-то сразу переходит к else условию, минуя так сказать правильный ответ для меня. Может конечно причина в том что к полям формы типа FILE действуют какие-то другие проверки на пустоту(размер в КБ или ещё что)?

спасибо!

elj 05.08.2009 16:01

Нельзя так пытаться получить доступ к переменной ($document). Для случая с аплоадом файлов есть есть массив $_FILES. И еще, не забудь для формы прописать
Код:

enctype="multipart/form-data"
Больше тут: http://ee2.php.net/manual/en/features.file-upload.php

kasha 06.08.2009 12:29

Вчера сидел читал книги, на утро проснулся, столько мыслей пришло в голову )), и кста эта тоже была ), что эта переменная идет через супермега масив $_FILES . Да у меня так и есть enctype="multipart/form-data" method="post"

буду пробовать, потом отпишу результат.

Спасибо.

kasha 07.08.2009 13:45

вот до чего я дошел )), после того как я указываю файл, нажимаю загрузить, файл на сколько я понимаю залетает на сервер, т.к. обработчик мне выдаёт следующаю информацию
PHP код:

 Результат загрузки файла:
Файл находится в TEMP директории
Временной файл
: /tmp/phpRpxRbR
Имя закачанного файла
Ostu kinnitus Piletilevi.pdf
Размер закачанного файла
80.91 Кбайт 

далее логично, что мне надо этот файл переместить в постоянную дирректорию, и с этим проблемы, наверное я путь как-то не так прописываю, в любом случае, я дела. это так:
PHP код:

$path "/domains/test.ee/public_html/files"
function 
($a) {
copy($document["tmp_name"],"$path/$document[name]");
}

if (
b==true)
{echo 
"УСПЕШНО <br />";}
else {
"НЕ ПРОШЛО <br />";} 

и обработчик выдает всегда УСПЕШНО результат )), ну это ладно, но файла в дирректории /domains/test.ee/public_html/files/ не появляется.

kasha 07.08.2009 16:00

Всем спасибо, если кто-то столкнется с такой проблемой, то я нашел ответ в статье http://www.php.su/phphttp/?uploads


Часовой пояс GMT +4, время: 06:01.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.