[英]Choose which form to fill with same input name with cURL
我有两种格式的HTML / PHP代码:一种用于登录,一种用于登录。我想用php cURL填充它们。 到目前为止,这是我的代码:
我的form.php文件代码如下
<html>
<head>
</head>
<body>
<form id="login" action="login.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>
<form id="register" action="register.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>
</body>
</html>
和
<?php
$ch = curl_init("form.php");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, true);
$data = array(
'name' => 'test',
'email' => 'test'
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$output = curl_exec($ch);
curl_close($ch);
?>
我的问题是:由于输入名称相同,我该如何选择要填写的表格?
我知道我可以更改输入的名称,但是我对可能存在的答案很感兴趣。
谢谢(PS:我是法语,所以我的英语可能不太完美):)
我认为cUrl仅对进行http
/ https
调用有用。
您需要的是无头浏览器,请尝试使用phantom JS ,我在我的Node Projects中使用了它,它们也有一个PHP版本: http : //jonnnnyw.github.io/php-phantomjs/ 。
您将javascript调用发送给PhantomJS,您的javascript函数返回的任何数据都将返回给您以进行访问-在您的情况下为php。
经过一番搜索,我找到了想要的东西。 我误解了cURL的目的。 我以为它会像浏览器用户一样发送表单,但是它只是将POST / PUT请求发送到网页。 确实PhantomJS可以工作,但我更喜欢Python方式。 我将尝试使用我也很熟悉的Python进行机械化。 谢谢您的回答 :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.