php - 从表单输入中提取数据(由curl获取)

时间:2012-08-18 11:44:45

标签: php curl

我有2个网站:foo.com和bar.com

foo.com的表单包含其数据库中的内容。我想要的是从表单中的每个输入,textarea获取该内容。

我可以通过curl(在bar.com上)访问foo.com的代码:

    <?php
     $post='pswd';        
     $site='foo.com';
     $c = curl_init();
     curl_setopt($c, CURLOPT_URL, $site);
     curl_setopt($c, CURLOPT_POST, 1);
     curl_setopt($c, CURLOPT_POSTFIELDS, "pswd=$post");
     curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
     $page = curl_exec($c);
     curl_close($c);
     ?>

我得到了整个html的表单和输入,如:

    <textarea name="inputname" class="longone">inputcontent</textarea>

我不知道如何开始提取数据并以这种方式保存:

$inputname='inputcontent';
你可以给我任何建议吗?提前谢谢你

编辑:

我忘了告诉你我知道一些输入名称而其他输入名称只有最后一个字符 - 例如inputnameiknow1,inputnameiknow2 ...

编辑2 - 解决方案感谢baba

  1. simplehtml dom使用file_get_contents以便将POST作为POST发送:How to post data in PHP using file_get_contents?

  2. 获取输入名称只需要'name'

  3. 所以我的代码看起来像Baba's但添加了

    $element->name
    

    提取输入名称

1 个答案:

答案 0 :(得分:1)

您好我认为您应该使用Simple HTML DOM Parser,因为您对正则表达式并不了解

示例

$html = file_get_html('http://www.examle.com/');

// Find all images 
foreach($html->find('textarea') as $element) 
       echo $element->plaintext . '<br>';

工作完成