• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Метод Post...

  • Автор темы Greenpeas
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

Greenpeas

Здравствуйте Уважаемые!
Такая вот проблема от неграмотности...
На странице есть кнопка "Ответить". При нажатии открывается дочернее окошко с формой ввода. Там есть кнопка "Послать".
Нада что бы при нажатии на данную кнопку, на родительскую страницу передались данные из формы дочерней странички, а сама дочерняя закрылась.
Ниже форма дочерней странички.

Код:
echo "<form action=\"messages.php?user=".$_GET['login_to']."\" method=\"post\">";
echo "<textarea name=\"message\" rows=10 cols=40 wrap=\"on\"></textarea><br><br>";
echo "<input type=\"submit\" value=\"Послать\" name=\"button_send_mes\" OnClick=\"window.opener.location.href=href; window.close();\">";
echo "</form>";
Как видно, я пытаюсь сделать OnClick="window.opener.location.href=href; window.close();". Не катит. window.close(); не срабатывает. Передает action формы в себя, а не родительской странице. Как правильно должно выглядеть событие OnClick кнопки "Послать"?
 
E

Emelya

Прива,
вопрос интересный, ответа не знаю;(
Но , может тебе стоит использовать div и вместо открытия дочернего окна делать его видимым?
Так обычно подсказки делают, но можно и форму сделать.
 
V

Vovochka

А заполнить скрытую форму в родительском окне и отправить ее?
GETом textarea отправлять - вообще говоря, плохое дело.
Да и вообще не особо понятно, чего вы хотели этим (window.opener.location.href=href) добиться.
 
G

Greenpeas

Короче я сделал так:
открываю дочернее окошко с формой. Заполняю форму данными и отправляю эти данные на страничку, которая загружается в это же окошко. На этой страничке происходят все необходимые действия (я про php скрипты)... после чего возвращаю этому окошку
Код:
echo "<script>window.opener.location.href='rp.php?dis_id=".$dis_id."';window.close();</script>";
т.е. я перезагружаю родителя и закрываю окошко. Родитель уже имеет вид в соответствии с введёнными данными... и всё... Так я вышел из тупика... Хотя думаю, что можно было бы из окошка передать все данные родителю, и что бы родитель уже всё сделал...

GETом textarea отправлять - вообще говоря, плохое дело.
POSTом, а не GETом... А как ты передаешь из textarea???? :(
 
E

Emelya

Прикольно,
а если дать textarea какой-нить id='ta', и потом OnClick="window.opener.location.href=rp.php?dis_id='"+document.getElementById("ta").value+"';window.close();"?

Или проще сделать глобальные javascript переменные и сетметод. Судя по описанию opener может их вызывать.
Типа в родительском окне:
Код:
<script language="JavaScript" src="basic.js" type="text/javascript"></script>
В javascript basic.js:
Код:
var a;
function setA( TempA ){
a=tempA;
}
И в дочернем окне
Код:
onclick="opener.setA(document.getElementById("ta").value);opener.close;";
Вроде так должно работать.
 
G

Greenpeas

Думаю тут много способов... Я бы и сделал что то на ява-скриптах, если бы не моя лень... Лень изучать ява-скрипт :)
А ведь в универе изучали... Я эти пары прогулял :)
Теперь некогда взяться...
Спасибо что отвечали!
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!