гиперссылка для отправки формы на другую страницу - PullRequest
0 голосов
/ 19 июля 2011

Есть ли способ, как ссылка может публиковать данные в форме на другой странице?

Я представляю что-то вроде этого, но это только открывает запрашиваемую страницу в новом окне (что нормально), но оставляет форму на этой странице незаполненной и также не отправленной.

<?php echo '
<form action="http://www.someweb.cz/info2/dochazka/dochazka.php" method="post">
    <input name="obdobi" type="hidden" value="'.$obdobi[Obdobi].'" />
    <input name="kurs" type="hidden" value="'.$kurz_vybrany.'" />
    <a target="_blank" style="text-decoration:none;" 
        href="http://www.someweb.cz/info2/dochazka/dochazka.php?doc=start.htm" 
        onclick="this.form.submit();">'.$pocet_lidi.'</a>
</form>'; ?>

Я могу немного изменить код страницы "action", но я бы хотел оставить метод POST.

Ответы [ 3 ]

1 голос
/ 19 июля 2011

Вы можете немного изменить свой javascript, поскольку использование this на самом деле относится к самой привязке, а не к окну, форме и т. Д. (Таким образом, вызов this.form фактически не захватывает форму, это выдача неопределенной ошибки).

<form action="http://www.google.com" method="GET">
    <input type="text" name="q" />
    <a href="http://www.stackoverflow.com" target="_blank" onClick="this.parentNode.submit();">Submit</a>
</form>

Обратите внимание на ссылку parentNode после этого. Примечание это демо .

1 голос
/ 19 июля 2011

Это легко сделать с помощью cURL.См. Пример №2 на справочной странице :

$ch = curl_init();

$data = array('obdobi' => $obdobi[Obdobi],
    'kurs' => $kurz_vybrany);

curl_setopt($ch, CURLOPT_URL, 'http://www.someweb.cz/info2/dochazka/dochazka.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

curl_exec($ch);
0 голосов
/ 21 июля 2011

Я не мог получить ни одного из предложенных работ.И поскольку это была лишь часть более крупного проекта с закрытием срока, я решил решить эту проблему, удалив форму, обновив привязку до

<a target="_blank" style="text-decoration:none;" 
    href="http://www.someweb.cz/info2/dochazka/dochazka.php
    ?doc=start.htm&obdobi='.$obdobi[Obdobi].'&kurs='.$kurz_vybrany.'">'.$pocet_lidi.'</a>

и добавив

<?php
    if (isset($_GET[kurs])) $kurs = $_GET[kurs];
    if (isset($_GET[obdobi])) $obdobi = $_GET[obdobi];
?>

в dochazka.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...