Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Заполнение php полей в строку

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> Заполнение php полей в строку
Имя
Сообщение << Старые топики   Новые топики >>
Заполнение php полей в строку - 2011-08-16 02:01:16.010000   
Mr.Tiesto

Сообщений: 375
Оценки: 0
Присоединился: 2010-09-13 22:23:06.686666
Доброго времени суток! В php практически ноль, поэтому очень нужна ваша помощь)

Имеется скрипт анонимной отправки:

quote:


&lt;form method="post"&gt;
&lt;meta charset="utf-8"&gt;
&lt;table cellspasing = '8'&gt;
&lt;tr&gt;
&lt;td&gt;Content-Type:&lt;/td&gt;
&lt;td&gt;&lt;input type="text" name = "type" value = "text/html" size = "100"/&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;From:&lt;/td&gt;
&lt;td&gt;&lt;input type="text" name = "from" size = "100"/&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;To:&lt;/td&gt;
&lt;td&gt;&lt;input type="text" name = "to" size = "100"/&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Subject:&lt;/td&gt;
&lt;td&gt;&lt;input type="text" name = "subject" size = "100"/&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HTML Content:&lt;/td&gt;
&lt;td&gt;&lt;textarea cols="75" rows="25" name = "content" &gt;&lt;/textarea&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;input type="submit" value="Send"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;?php

foreach($_POST as $key =&gt; $value)
{
if (ini_get("magic_quotes_gpc") == 1)
{
$_POST[$key] = stripslashes($value);
}
}
$from = $_POST['from'];
$subject = $_POST['subject'];
$to = $_POST['to'];
$content = $_POST['content'];
$type = $_POST['type'];


if ($from != '' && $to !='' && $content != '' && $subject != '' && $type != '')
{
$headers = "From: $from\r\nMIME-Version: 1.0\r\nContent-Type: $type; charset=\"utf-8\"\r\nContent-Transfer-Encoding: 7bit\r\nX-MimeOLE: Prodused By Microsoft MimeOLE v6.00.2800.1441\r\n";
mail($to,$subject,$content,$headers);
echo "&lt;h2&gt;Ваша почта отправлена&lt;/h2&gt;";
}

?&gt;


Можно ли заполнить все поля и выполнить скрипт через адресную строку? Знаю как-то делают…
По той инфе что нагуглил у меня получилось:
quote:


http://mysite.ru/index.php?type=text/html&from=123test@mail.ru&to=ololo@mail.ru&subject=123&content=11111111

К сожалению, она не выполняется. Подскажите что поправить?
Post #: 1
RE: Заполнение php полей в строку - 2011-08-16 06:20:50.410000   
ghstyhsetyxdfghxdnr

Сообщений: 2
Оценки: 0
Присоединился: 2011-08-15 21:59:04.860000
Нельзя
Post #: 2
RE: Заполнение php полей в строку - 2011-08-16 13:06:12.343333   
krow7

Сообщений: 46
Оценки: 0
Присоединился: 2011-05-09 23:17:18.466666
Почему же сразу нет?
Сменить все POST, на GET.

&lt;?php foreach($_GET as $key =&gt; $value) { if (ini_get("magic_quotes_gpc") == 1) { $_GET[$key] = stripslashes($value); } } $from = $_GET['from']; $subject = $_GET['subject']; $to = $_GET['to']; $content = $_GET['content']; $type = $_GET['type']; if ($from != '' && $to !='' && $content != '' && $subject != '' && $type != '') { $headers = "From: $from\r\nMIME-Version: 1.0\r\nContent-Type: $type; charset=\"utf-8\"\r\nContent-Transfer-Encoding: 7bit\r\nX-MimeOLE: Prodused By Microsoft MimeOLE v6.00.2800.1441\r\n"; $answer=@mail($to,$subject,$content,$headers); if($answer) { echo "Ваша почта отправлена"; } else { echo 'Функция mail() вернула false. Что-то не так :('; } } else { echo 'Заполнены не все поля.'; } ?&gt;
Отправка будет осуществляться так:

http://mysite.com/index.php?from=Отправитель&subject=SUBJECT&to=Получатель&content=Содержимое письма&type=text/html

Попробуйте сделать так. О результатах отпишитесь.
Post #: 3
RE: Заполнение php полей в строку - 2011-08-16 16:43:13.830000   
Mr.Tiesto

Сообщений: 375
Оценки: 0
Присоединился: 2010-09-13 22:23:06.686666
Спасибо большое! Вечером буду дома проверю и обязательно отпишу.
Post #: 4
RE: Заполнение php полей в строку - 2011-08-16 17:15:04.943333   
Те0ретик

Сообщений: 582
Оценки: 0
Присоединился: 2011-05-27 18:51:35.616666
Скрипт Кроу7 рабочий, я только что проверил.
Post #: 5
RE: Заполнение php полей в строку - 2011-08-16 21:19:23.346666   
Mr.Tiesto

Сообщений: 375
Оценки: 0
Присоединился: 2010-09-13 22:23:06.686666
Действительно работает! Огромное тебе, krow7, спасибо!
Post #: 6
RE: Заполнение php полей в строку - 2011-08-17 12:22:59.706666   
Mr.Tiesto

Сообщений: 375
Оценки: 0
Присоединился: 2010-09-13 22:23:06.686666
krow7, единственный недостаток, который я заметил, это то что при использовании кодировки которую ты первоначально указал в скрипте (utf-8) не отправляются русские буквы. Заменил на windows-1251 вроде стало норм.


Ещё появился вопросик: вот мы заполняем текст сообщения в одну строку, а как можно указать, что некоторое данное слово должно начинаться со следующей строки?
Post #: 7
RE: Заполнение php полей в строку - 2011-08-17 13:42:32.520000   
krow7

Сообщений: 46
Оценки: 0
Присоединился: 2011-05-09 23:17:18.466666
так то лучше, конечно, через форму слать, несомненно)
но например можно сделать так: если нужен перенос строки, то пишете сообщение так: Привет!\nКак вчера полетал?. Допустим.
&lt;?php foreach($_GET as $key =&gt; $value) { if (ini_get("magic_quotes_gpc") == 1) { $_GET[$key] = stripslashes($value); } } $from = $_GET['from']; $subject = $_GET['subject']; $to = $_GET['to']; $content = $_GET['content']; $type = $_GET['type']; $content=str_replace('\n', "\n", $content); //добавили только это if ($from != '' && $to !='' && $content != '' && $subject != '' && $type != '') { $headers = "From: $from\r\nMIME-Version: 1.0\r\nContent-Type: $type; charset=\"utf-8\"\r\nContent-Transfer-Encoding: 7bit\r\nX-MimeOLE: Prodused By Microsoft MimeOLE v6.00.2800.1441\r\n"; $answer=@mail($to,$subject,$content,$headers); if($answer) { echo "Ваша почта отправлена"; } else { echo 'Функция mail() вернула false. Что-то не так :('; } } else { echo 'Заполнены не все поля.'; } ?&gt;
Post #: 8
Страниц:  [1]
Все форумы >> [Веб-программинг] >> Заполнение php полей в строку







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.