2010-08-27 2 views
5

Я новичок в PHP, но задавался вопросом, как это можно сделать.Как отправить форму с помощью метода POST текстовой ссылки

Я хочу отправить HTML-форму на другую страницу PHP, но я не хочу использовать уродливую кнопку. Я хочу использовать ссылку.

Дело в том, что я вижу много решений, которые используют Java Script/Jquery и т. Д., Чтобы решить эту проблему. Кто-нибудь знает, как это сделать только с PHP-кодом и HTML?

+0

PHP является серверным, поэтому независимо от того, сколько вы пробовали, это невозможно сделать. HTML, однако, * мог * сделать это, но, к сожалению, этого не делает, поэтому вам придется придерживаться хотя бы некоторого небольшого кода JavaScript (см. Ответ Sarfraz). – Frxstrem

+1

Или вы могли бы попробовать стилизовать свою кнопку отправки с помощью css. – opatut

ответ

8

Либо использовать <input type="submit"> и стиль это как ссылка с помощью CSS, или создать ссылку с OnClick:

<a href="#" onclick="document.forms['name_of_your_form'].submit();">Lol Rofl</a> 

Если вы хотите, чтобы убедиться, что он работает, когда JS отключен, добавить что-то вроде этого:

<noscript> 
    <input type="submit" ... /> 
</noscript> 

Это покажет кнопку на компьютерах, где отключена JS, указанная выше ссылка будет отображаться. Обходной путь заключается в том, чтобы скрыть ссылку с помощью CSS, а затем показать его с помощью JS ..

+0

Дело в том, что я хотел, чтобы он работал без javascript. Notjavascript, и никакая кнопка. Есть ли какой-либо возможный способ сделать это, используя ссылку и код PHP? –

+1

@Relik Angus: нет, PHP не может, поскольку он только серверный, а HTML не может, потому что он не был реализован, поэтому мы все-таки используем JavaScript для этого. – Frxstrem

+1

Нет. Кроме того, вы довольны результатами, которые вы получаете, создавая кнопку отправки с помощью CSS, которая не имеет никакого отношения к Javascript и должна поддерживаться/включаться в каждом браузере. - Как я писал: «используйте и создавайте его как ссылку с css", что в основном то же самое, что и gordon. – opatut

5

Вы можете сделать это так:

<a href="#" onclick="document.forms['form_name'].submit();">Submit</a> 

Это будет представить форму к любому URL устанавливается в атрибуте formaction.

+0

, которые могут работать, но разве этот скрипт Java?Я вроде как хотел найти решение в PHP/html –

+0

Но это все еще использует Javascript ... –

+0

@Relik Angus: PHP - это серверный язык, вы не можете использовать его для отправки форм :) – Sarfraz

3

Я не знаю, как много кнопок можно унифицировать в любом браузере, но вот начало/доказательство концепции может играть с, чтения: тест, настроить, поставить во внешний CSS, и так далее

<input type="submit" value="Send" style=" 
    border:0; 
    background-color:transparent; 
    color: blue; 
    text-decoration:underline; 
"/> 
+0

это просто сумасшедший, чтобы работать .. Стиль кнопки, которая похожа на ссылку да. Возьмите тогда ^^ спасибо k. Я попробую это –

1

Я нашел альтернативный способ использования обычного текста в качестве кнопки отправки, путем проб и (много) ошибок. Поместите метки меток вокруг кнопки отправки и текста, затем определите кнопку CSS, чтобы она не отображалась, и текстовый CSS, чтобы он выглядел как ссылка.

Имейте в виду, что это, вероятно, не очень хорошая практика. :)

Например, это идет в HTML форме:

<label class="notalink"><input type="submit" value="Submit" class="invisibutton"> 
Click this text to submit</label> 

И это идет в CSS:

.invisibutton { 
    height: 1px; 
    width: 1px; 
    display: none; 
    vertical-align: text-bottom; 
} 

label { 
    color: (link-color) 
    text-decoration: (etc.) 
} 

И так далее для определения этикетки, так это выглядит как стандарт ссылка. Кнопка невидима, но текст можно щелкнуть как ее метку, поэтому она действует как кнопка.

Единственный недостаток заключается в том, что он заставил мой ярлык сбросить пиксель. Если вокруг псевдо-ссылки были другие слова, мне пришлось определить окружающий класс текста с помощью «vertical-align: bottom;»; чтобы убедиться, что это не выглядит странно.

Работал в обаянии. Я успешно использовал его на странице WordPress для создания фальшивых ссылок, которые запускают скрипты php (путем установки $ _POST).

Смежные вопросы