您如何获得所有输入字段和值
How can you get all inputs fields and the value
如何从具有 php 的 HTML 表单中获取所有 type="text"
的输入字段?这是我的代码:
if (isset($_POST['submit'])) {
$dom = new DOMDocument();
print "<pre>";
foreach($dom->getElementsByTagName("input") as $inputs) {
print $inputs->value . " / " . $inputs->name . "<br/>";
}
print "</pre>";
}
我还会从每个输入字段中获取名称和值。如果我 运行 我的代码,我什么也得不到。这是我的 html 代码:
<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="post">
<input name="1" type="text" value="Can you help me?"/>
<input name="2" type="text" value="Thanks"/>
<input name="3" type="text" value=""/>
<!--and a lot more input fields.-->
<input name="submit" type="submit" value=""/>
</form>
我是 php 和 DOM 的新手。
这可能对您有所帮助
$data = $_REQUEST;
unset($data["submit"]);
print_r($data);
为什么不将输入元素与其名称结合起来,例如
<input name="text[3]" type="text" value=""/>
<input name="text[4]" type="text" value=""/>
它将作为数组出现在 $_POST 中
使用 DOMDocument,您可以调用 xpath 查询来查找如下元素:-
$str='
<form action="" method="post">
<input name="1" type="text" value="Can you help me?"/>
<input name="2" type="text" value="Thanks"/>
<input name="3" type="text" value=""/>
<!--and a lot more input fields.-->
<select name="fred"><option value=1>1</select>
<input type="checkbox" name="bert" value=1>
<input type="radio" name="wilma" value=1 />
<textarea name="sue"></textarea>
<input name="submit" type="submit" value=""/>
</form>';
$dom = new DOMDocument;
$dom->loadHTML( $str );
$xpath = new DOMXpath( $dom );
$col=$xpath->query('//form/input|//form/textarea');
if( is_object( $col ) ){
foreach( $col as $node ) echo $node->tagName.' '.$node->nodeValue.'<br />';
}
您可以使用管道字符扩展 xpath 查询,然后指定一个新查询,例如 |//form/button
等
要获取类型为文本的特定字段,查询将是:-
$col=$xpath->query('//form/input[@type="text"]');
如何从具有 php 的 HTML 表单中获取所有 type="text"
的输入字段?这是我的代码:
if (isset($_POST['submit'])) {
$dom = new DOMDocument();
print "<pre>";
foreach($dom->getElementsByTagName("input") as $inputs) {
print $inputs->value . " / " . $inputs->name . "<br/>";
}
print "</pre>";
}
我还会从每个输入字段中获取名称和值。如果我 运行 我的代码,我什么也得不到。这是我的 html 代码:
<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="post">
<input name="1" type="text" value="Can you help me?"/>
<input name="2" type="text" value="Thanks"/>
<input name="3" type="text" value=""/>
<!--and a lot more input fields.-->
<input name="submit" type="submit" value=""/>
</form>
我是 php 和 DOM 的新手。
这可能对您有所帮助
$data = $_REQUEST;
unset($data["submit"]);
print_r($data);
为什么不将输入元素与其名称结合起来,例如
<input name="text[3]" type="text" value=""/>
<input name="text[4]" type="text" value=""/>
它将作为数组出现在 $_POST 中
使用 DOMDocument,您可以调用 xpath 查询来查找如下元素:-
$str='
<form action="" method="post">
<input name="1" type="text" value="Can you help me?"/>
<input name="2" type="text" value="Thanks"/>
<input name="3" type="text" value=""/>
<!--and a lot more input fields.-->
<select name="fred"><option value=1>1</select>
<input type="checkbox" name="bert" value=1>
<input type="radio" name="wilma" value=1 />
<textarea name="sue"></textarea>
<input name="submit" type="submit" value=""/>
</form>';
$dom = new DOMDocument;
$dom->loadHTML( $str );
$xpath = new DOMXpath( $dom );
$col=$xpath->query('//form/input|//form/textarea');
if( is_object( $col ) ){
foreach( $col as $node ) echo $node->tagName.' '.$node->nodeValue.'<br />';
}
您可以使用管道字符扩展 xpath 查询,然后指定一个新查询,例如 |//form/button
等
要获取类型为文本的特定字段,查询将是:-
$col=$xpath->query('//form/input[@type="text"]');