我有一个输入字段如下:
<input type="text" name="subject" id="subject" value="Car Loan">
我想获取输入字段值Car Loan
并将其分配给会话。如何使用 PHP 或 jQuery 执行此操作?
我有一个输入字段如下:
<input type="text" name="subject" id="subject" value="Car Loan">
我想获取输入字段值Car Loan
并将其分配给会话。如何使用 PHP 或 jQuery 执行此操作?
使用 PHP$_POST
或$_GET
超全局变量通过 HTML 标记的名称检索输入标记的值。
例如,更改表单中的方法,然后通过输入名称回显值:
使用$_GET
方法:
<form name="form" action="" method="get">
<input type="text" name="subject" id="subject" value="Car Loan">
</form>
要显示值:
<?php echo $_GET['subject']; ?>
使用$_POST
方法:
<form name="form" action="" method="post">
<input type="text" name="subject" id="subject" value="Car Loan">
</form>
要显示值:
<?php echo $_POST['subject']; ?>
使用 PHP 从表单中获取值的示例:
把它放在 foobar.php 中:
<html>
<body>
<form action="foobar_submit.php" method="post">
<input name="my_html_input_tag" value="PILLS HERE"/>
<input type="submit" name="my_form_submit_button"
value="Click here for penguins"/>
</form>
</body>
</html>
阅读上面的代码,以便您了解它在做什么:
“foobar.php 是一个包含 HTML 表单的 HTML 文档。当用户在表单内按下提交按钮时,表单的 action 属性会运行:foobar_submit.php
。表单将作为 POST 请求提交。表单内部是一个输入标签名称“my_html_input_tag”。它的默认值是“PILLS HERE”。这会导致在浏览器上出现一个文本框,其中包含文本:'PILLS HERE'。右侧是一个提交按钮,当您单击它时,浏览器 url 会发生变化tofoobar_submit.php
并运行以下代码。
将此代码放在与 foobar.php 相同的目录中的 foobar_submit.php 中:
<?php
echo $_POST['my_html_input_tag'];
echo "<br><br>";
print_r($_POST);
?>
阅读上面的代码,你就会知道它在做什么:
上面的 HTML 表单用代表表单内 html 元素的键/值对填充了 $_POST 超全局变量。echo 通过键打印出值:'my_html_input_tag'。如果找到键,它就是,它的值被返回:“PILLS HERE”。
然后 print_r 打印出 $_POST 中的所有键和值,以便您可以查看其中还有什么。
带有 name= 的输入标签的值my_html_input_tag
被放入 $_POST 并且您在另一个 PHP 文件中检索它。
您可以将值$value
设为:
$value = $_POST['subject'];
或者:
$value = $_GET['subject'];
,取决于使用的表单方法。
session_start();
$_SESSION['subject'] = $value;
该值被分配给会话变量主题。
对于全球使用,您可以使用:
$val = $_REQUEST['subject'];
并添加您的会话,只需
session_start();
$_SESSION['subject'] = $val;
在这种情况下你不需要 jQuery。
function get_input_tags($html)
{
$post_data = array();
// a new dom object
$dom = new DomDocument;
//load the html into the object
$dom->loadHTML($html);
//discard white space
$dom->preserveWhiteSpace = false;
//all input tags as a list
$input_tags = $dom->getElementsByTagName('input');
//get all rows from the table
for ($i = 0; $i < $input_tags->length; $i++)
{
if( is_object($input_tags->item($i)) )
{
$name = $value = '';
$name_o = $input_tags->item($i)->attributes->getNamedItem('name');
if(is_object($name_o))
{
$name = $name_o->value;
$value_o = $input_tags->item($i)->attributes->getNamedItem('value');
if(is_object($value_o))
{
$value = $input_tags->item($i)->attributes->getNamedItem('value')->value;
}
$post_data[$name] = $value;
}
}
}
return $post_data;
}
error_reporting(~E_WARNING);
$html = file_get_contents("https://accounts.google.com/ServiceLoginAuth");
print_r(get_input_tags($html));
如果它是一个获取请求使用,$_GET['subject']
或者如果它是一个发布请求使用,$_POST['subject']
<form action="" method="post">
<input type="text" name="subject" id="subject" value="Car Loan">
<button type="submit" name="ok">OK</button>
</form>
<?php
if(isset($_POST['ok'])){
echo $_POST['subject'];
}
?>