Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Помогите найти ошибку в коде! / 7 сообщений из 7, страница 1 из 1
03.01.2013, 20:53
    #38099608
Pelsh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите найти ошибку в коде!
Имеем самый обычный код для отправки сообщения с сайта + файлик. Но вот незадача в том, что при нажатии кнопки отправить скрипт почему-то не видит, что я прикладываю файл - к нему приходит пустая переменная и все тут... помогите!

Код: 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.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
<?
$mymail="vasya@mail.ru";
$updir="images/userupload/"; 
$after_sent="/sent.shtml"; 
$max="2097152"; 



if(!isset( $_POST['go'] )) {
if (file_exists("header.html")) {
include ("header.html");
} 
?>
<p style="margin-left: 30" align="justify"><form ENCTYPE="multipart/form-data" method=post>
  <table border="0" width=83%>
    <tr> 
      <td width=30%><font size=+1 color=red>&clubs;</font>&nbsp;Ваше имя: </td>
      <td width=70%> 
        <input type=text name=name>
      </td>
    </tr>
    <tr> 
      <td width=30%><font size=+1 color=red>&clubs;</font>&nbsp;Ваш E-mail: </td>
      <td width=70%><input type=text name=mail></td>
    </tr>
<tr> 
      <td width=30%><font size=+1 color=red>&clubs;</font>&nbsp;Тема: </td>
      <td width=70%> 
        <input type="text" name="subject">
      </td>
    </tr>
    <tr> 
      <td width=30%>Текст сообщения:</td>
      <td width=70%> 
        <textarea name="message" rows="10" cols="40"></textarea>
      </td>
    </tr>
    <tr> 
      <td width=30%>Прикрепить файл (max. 2 MB): </td>
      <td width=70%><INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="<?echo $max;?>"><INPUT NAME="userfile" TYPE="file" SIZE="40"></td>
    </tr>
    <tr> 
      <td colspan="2"> 
        <center>
          <input type="submit" name=go value="Отправить">
       </center>
      </td></tr></table></form></p>
<?
if (file_exists("footer.html")) {
include ("footer.html");
}
}
else {

$name=$_POST['name'];
$mail=$_POST['mail'];
$subject=$_POST['subject'];
$message=$_POST['message'];
$userfile=$_POST['userfile'];
$MAX_FILE_SIZE=$_POST['MAX_FILE_SIZE'];

if(empty($name)) { 
$bad = "Вы не подписались<br>";
}

if(empty($userfile)) { 
$bad .= "Нет файла<br>";
}

if(!preg_match("/^([a-z,0-9])+@([a-z,0-9])+(.([a-z,0-9])+)+$/", $mail)) // проверка правильности введенного e-mail адреса
{
$bad .= "Неправильный e-mail<br>";
}

if(empty($subject)) { 
$bad .= "Отсутствует тема сообщения<br>";
}

if ($bad) 
{
echo $bad;
?>
<a href="javascript:history.back(1)">Заполните, пожалуйста, пустые поля</a>
<?
exit;
}
if (is_uploaded_file($userfile)) { 
$fi = "K письму был прикреплен файл $userfile_name размером $userfile_size байт, который был закачан в директорию $updir";
}
$ip = getenv("REMOTE_ADDR");
$usa = getenv("HTTP_USER_AGENT");
$temp = "$fi\n\nВам было отправлено сообщение:\n\n$message\n\nIP-адрес отправителя: $ip\nuser-agent: $usa";
$subj = "$subject"; 
$body = $temp;
//$adds = "From: $mail\n"; 
//$adds .= "X-Sender: < $mail >\n";
$adds .= "Content-Type: text/plain; charset=windows-1251\n"; 
mail($mymail,$subj,$body,$adds); 
//Header("Location: $after_sent");
echo"сообщение ушло. - $userfile -";
}
if (is_uploaded_file($userfile)) {

$dest=$updir.$userfile_name;
    move_uploaded_file($userfile, $dest);

} 
?>




после заполнения формы - видим "Нет файла".
Помогите, плиз!
...
Рейтинг: 0 / 0
03.01.2013, 21:17
    #38099640
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите найти ошибку в коде!
С чего вдруг файл ищите в посте?автор
Код: php
1.
$userfile=$_POST['userfile'];



Дальше все еще хуже
...
Рейтинг: 0 / 0
03.01.2013, 21:24
    #38099646
Pelsh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите найти ошибку в коде!
vkle, а как быть? подскажите, где искать?
...
Рейтинг: 0 / 0
03.01.2013, 22:01
    #38099669
Pelsh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите найти ошибку в коде!
Перерыл весь инет, пересмотрел кучу скриптов придумал вот такую конструкцию, но она тоже не работает....

Код: php
1.
$userfile=$_POST['$_FILES[userfile]'];



Помогите)))
...
Рейтинг: 0 / 0
03.01.2013, 22:09
    #38099671
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите найти ошибку в коде!
Pelshгде искать?В документации , конечно же!

Следующим будет вопрос вроде "как прикрепить файл к письму" или осилите воспользоваться Гуглем и найти ссылку на соответствующие RFC и коды скриптов самостоятельно? ;-)
...
Рейтинг: 0 / 0
05.01.2013, 17:34
    #38100620
Pelsh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите найти ошибку в коде!
применил вот такой код

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
if(isset($_FILES['userfile']))
{
$target1 = "images/userupload/".basename($_FILES['userfile']['name']) ;
//print_r($_FILES);

 if(move_uploaded_file($_FILES['userfile']['tmp_name'],$target1))
 {
 $fi = "K письму был прикреплен <a href='http://zolotodom.ru/$target1'>файл 1</a><br>";  
 }
}



только для меня так и осталось загадкой зачем тут нужна функция basename()
...
Рейтинг: 0 / 0
09.01.2013, 13:06
    #38103255
Chop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите найти ошибку в коде!
Pelshтолько для меня так и осталось загадкой зачем тут нужна функция basename()
Пример использования функции basename()
Код: php
1.
2.
3.
4.
5.
<?php
   $path = "/home/httpd/html/index.php";
   $file = basename($path);         // $file содержит "index.php"
   $file = basename($path, ".php"); // $file содержит "index"
?> 
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Помогите найти ошибку в коде! / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]