Проблема с передачей переменных
Модераторы: dobs, ArniXXX, hostess, bj
Проблема с передачей переменных
Форма:
<form action="send.php" method=post>
<input type=hidden name=action value=post>
<table>
<tr><td>Тема</td><td>
<input type=text name="subj" cols=40>
</td></tr>
<tr><td><b>Автор</b></td><td>
<input type=text name="auth" cols=40>
</td></tr>
<tr><td>Організація</td><td>
<input type=text name="org" cols=40>
</td></tr>
<tr><td>Рік випуску</td><td>
<input type=text name="year" cols=4>
</td></tr>
<tr><td>Контактна інформація</td><td>
<input type=text name="cont" cols=40>
</td></tr>
<tr>
<td colspan=2>
<b>Повідомлення:</b><br><textarea name="mess" cols=40 rows=5></textarea></td></tr>
<tr><td colspan=2><input type=submit value="Надіслати"><input type=reset value="Очистити"></td></tr>
</table></form>
Скрипт (после отладочного упрощения):
<?php
mail("tsuman@ukr.net", $subj, $mess);
echo $mess;
?>
Шлет все это безобразие пустые письма, судя по эху скрипту не(правильно) передаюся переменные из формы. Замучался методом проб и обломов, помогите, пожалуйста...
<form action="send.php" method=post>
<input type=hidden name=action value=post>
<table>
<tr><td>Тема</td><td>
<input type=text name="subj" cols=40>
</td></tr>
<tr><td><b>Автор</b></td><td>
<input type=text name="auth" cols=40>
</td></tr>
<tr><td>Організація</td><td>
<input type=text name="org" cols=40>
</td></tr>
<tr><td>Рік випуску</td><td>
<input type=text name="year" cols=4>
</td></tr>
<tr><td>Контактна інформація</td><td>
<input type=text name="cont" cols=40>
</td></tr>
<tr>
<td colspan=2>
<b>Повідомлення:</b><br><textarea name="mess" cols=40 rows=5></textarea></td></tr>
<tr><td colspan=2><input type=submit value="Надіслати"><input type=reset value="Очистити"></td></tr>
</table></form>
Скрипт (после отладочного упрощения):
<?php
mail("tsuman@ukr.net", $subj, $mess);
echo $mess;
?>
Шлет все это безобразие пустые письма, судя по эху скрипту не(правильно) передаюся переменные из формы. Замучался методом проб и обломов, помогите, пожалуйста...
Re: Проблема с передачей переменных
Добрый день!
Я организовал поиск по сайту с передачей поискового слова на ел.почту методом POST.
На локальном сервере все работает, а на хостинге нет.
При передачи переменной получаю пустую строку и пустое письмо!
Почитав инфу я подумал что этот метод отключен и прописав такие строки в файлах user.ini (корень сайта) и php (~/cgi-bin):
register_globals = On
register_long_arrays = On
Результат нулевой, немогу понять в чем дело?
С ув. Владимир
Я организовал поиск по сайту с передачей поискового слова на ел.почту методом POST.
На локальном сервере все работает, а на хостинге нет.
При передачи переменной получаю пустую строку и пустое письмо!
Почитав инфу я подумал что этот метод отключен и прописав такие строки в файлах user.ini (корень сайта) и php (~/cgi-bin):
register_globals = On
register_long_arrays = On
Результат нулевой, немогу понять в чем дело?
С ув. Владимир
-
- HO Moderators
- Сообщения: 2504
- Зарегистрирован: Вс апр 09, 2006 14:42
- Откуда: /home/Ukraine/Kyiv
- Контактная информация:
Re: Проблема с передачей переменных
Кусок скрипта покажите...
Re: Проблема с передачей переменных
Код формы поиска:
Код файла "View_find.php":
Упускаю HTML, далее сам код поиска:
и так 7 раз по разным таблицам.
Код: Выделить всё
<form class="form_find" action="View_find.php" method="post" name="form_find">
<input name="find" type="text" size="22" maxlength="45"><br>
<input class="form_bottom" name="submit_find" type="submit" value="Найти">
</form>
Код: Выделить всё
<?php
include ("block/bd.php"); /* Подключаю базу */
if (isset($_POST['submit_find'])) { $submit_find = $_POST['submit_find']; }
if (isset($_POST['find'])) { $find = $_POST['find']; }
if (isset ($submit_find))
{
if (empty ($find) or strlen($find) < 4)
{
exit ("<p>Поисковый запрос не введен или он менее 4-х символов.</p>");
}
$find = trim ($find); /* Убираем лишние пробелы */
$find = stripslashes ($find); /* Безопасность от слеша в поиске */
$find = htmlspecialchars ($find); /* Безопасность от html кода в поиске */
}
else
{
exit("<p>Вы хотите осуществить поиск БЕЗ необходимых параметров</p>");
}
?>
Код: Выделить всё
/* Письмо по запросу информации на сайте */
/* Отправляю письмо на адресс */
$IPadress=$_SERVER['REMOTE_ADDR'];
$date = date("Y-m-d");
$address = "elisavetgrad-city@i.ua";
$subject = "На сайте ИСКАЛИ";
$message = "На САЙТЕ искали слово: ".$find."\n". "IP-adress: ".$IPadress."\n";
mail($address,$subject,$message,"Content-type:text/plain; Charset=windows-1251\r\n");
echo ("Поисковое слово - $find");
/* 1 - Поиск по таблице Infra_structura */
$result = mysql_query ("SELECT id, title FROM Infra_structura WHERE MATCH (text) AGAINST ('$find')",$db);
if (mysql_num_rows ($result) > 0)
{
$myrow = mysql_fetch_array ($result);
/* Цикл вывода */
do
{
printf ("<p class='view_name_cat'><a href='View_post.php?id=%s'>%s</a></p>", $myrow["id"], $myrow["title"]);
}
while ($myrow = mysql_fetch_array ($result));
}
else
{
/* Если результат =0 */
$null_rezult = 1;
}
-
- HO Moderators
- Сообщения: 2504
- Зарегистрирован: Вс апр 09, 2006 14:42
- Откуда: /home/Ukraine/Kyiv
- Контактная информация:
Re: Проблема с передачей переменных
Вместо $find пишите $_POST['find']
П.С. Попов - зло
П.С. Попов - зло
Re: Проблема с передачей переменных
Заменял переменную $find на выражение $_POST['find'] ничего не изменилось!
Поработав с кодом и методом передачи, я обнаружил, что передаются только цифры либо латиница!
А кириллица непередается через форму, хотя в адресной строке ее видно! В чем загвоздка?
Поработав с кодом и методом передачи, я обнаружил, что передаются только цифры либо латиница!
А кириллица непередается через форму, хотя в адресной строке ее видно! В чем загвоздка?
-
- Сообщения: 925
- Зарегистрирован: Сб мар 14, 2009 00:23
- Откуда: пгт. Войтовцы
- Контактная информация:
Re: Проблема с передачей переменных
Упустили арибут: enctype='application/x-www-form-urlencoded'
А можно на сайт посмотреть?..
А можно на сайт посмотреть?..
Fusion Player — модуль для CMS PHP-Fusion (demo video: посмотреть)
Не использую пиратского ПО
IP-PBX Asterisk українською. Зроби краще!
«ХО» – мое все.
А ты перевел свой домен на DNSSEC?
Slackware user
Не использую пиратского ПО
IP-PBX Asterisk українською. Зроби краще!
«ХО» – мое все.
А ты перевел свой домен на DNSSEC?
Slackware user
Re: Проблема с передачей переменных
Где эту строку вставить?baytuch писал(а):Упустили арибут: enctype='application/x-www-form-urlencoded'
Вот ссылка http://www.elisavetgrad.ho.uabaytuch писал(а): А можно на сайт посмотреть?..
Правда поиск отключен, вышеуказанной по причине
-
- HO Moderators
- Сообщения: 2504
- Зарегистрирован: Вс апр 09, 2006 14:42
- Откуда: /home/Ukraine/Kyiv
- Контактная информация:
Re: Проблема с передачей переменных
В htmlspecialchars укажите кодировку cp1251 т.к. по умолчанию она на utf-8 смотрит и обрезает кириллицу.