我是一名不熟悉网络发展中国家的学生。如果我有一些错误和知识不足,请与我同行。
我的问题是如何在这个问题上使用php cUrl,我制作了一个php文件,作为另一个网站的索引或首页。我们要做的是创建一个搜索页面,然后从搜索中输出结果。用户输入内容然后在其他网站上搜索,之后结果将在某些iframe上输出。
以下是我的代码,
<?php
$url = 'http://somesite.com';
{
$username=$_POST['Search'];
$yourformfields="Search=$Search";
$curl_handle=curl_init();
curl_setopt($curl_handle,CURLOPT_URL,'http://somesite.com');
curl_setopt($curl_handle,CURLOPT_CONNECTTIMEOUT,2);
curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
curl_setopt($curl_handle,CURLOPT_POST,1);
curl_setopt($curl_handle,CURLOPT_POSTFIELDS,$yourformfields);
$buffer = curl_exec($curl_handle);
//$result = curl_exec($curl_handle);
curl_close($curl_handle);
if (empty($buffer))
{
echo"<iframe src='$buffer'></iframe>";
}
}
?>
<form action="index.php" method="post">
<input type="text" name="formName" value="<?=$varName;?>">
<input type="Submit" name="formSubmit" value="Search">
</form>
当我输入一些不输出结果的东西时会发生什么,老实说它不输出任何东西。我已经检查了4到5次,但由于我目前在网络开发和编程方面的知识,我似乎无法找到问题。感谢所有帮助tnx。
答案 0 :(得分:0)
这应该会给你一个良好的开端,iframe不是一个很好的解决方案,尝试使用ajax。
curl.php
<form action="curl.php" method="post">
URL <input type="text" name="url" value="<?php echo ((isset($_POST['url']))?$_POST['url']:"") ?>"> <br>
Keyword <input type="text" name="keyword" value="<?php echo ((isset($_POST['keyword']))?$_POST['keyword']:"") ?>"> <br>
<input type="Submit" name="formSubmit" value="Search">
</form>
<?php
if(isset($_POST['formSubmit']))
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $_POST['url']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$st = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$response = curl_exec($ch);
if($st==200)
echo "Request Unsuccessful";
else
{
if (strpos($response,$_POST['keyword']) !== false)
{
echo 'Your input keyword found.';
}
else
echo 'No matches, try another keyword';
}
curl_close($ch);
}
?>
注意:此代码要求您启用php curl
扩展程序