我有这个Twitter api脚本,它从指定用户那里提取推文。
我想知道如何更改它,以便我可以使用文本框字段而不是固定用户名。
这是代码
我可以将else {$user = "twitterusername";}
链接到带有提交按钮的文本框吗?
<?$url = "https://api.twitter.com/1.1/statuses/user_timeline.json";
$requestMethod = "GET";
if (isset($_GET['user'])) {$user = $_GET['user'];} else {$user = "twitterusername";}
if (isset($_GET['count'])) {$user = $_GET['count'];} else {$count = 20;}
$getfield = "?screen_name=$user&count=$count";
$twitter = new TwitterAPIExchange($settings);
$string = json_decode($twitter->setGetfield($getfield)
->buildOauth($url, $requestMethod)
->performRequest(),$assoc = TRUE);
if($string["errors"][0]["message"] != "") {echo "<h3>Sorry, there was a problem.</h3><p>Twitter returned the following error message:</p><p><em>".$string[errors][0]["message"]."</em></p>";exit();}
foreach($string as $items)
{
echo "Tweet: ". $items['text']."<br />";
echo "retweets: ". $items['retweet_count']."<br />";
}
?>
答案 0 :(得分:1)
从剪辑的外观来看,它将使用$ _GET传递的任何用户。因此,如果您希望带有文本输入的表单选择新用户,则需要在页面上放置一个表单,使用方法=&#34; get&#34;来提交表单。
答案 1 :(得分:0)
你在这里有什么:
if (isset($_GET['user'])) {$user = $_GET['user'];} else {$user = "twitterusername";}
只有在您没有为user
传递GET(又名.querystring)值时,才会修复用户名。
如果您访问了包含?user=someOtherUsername
的网页,则会为该用户提取数据。
因此,要让表单从文本框传递该值,您可以在同一个PHP文件中使用这样简单的内容:
<form method="GET" action="">
<input type="text" name="user" /><input type="submit" value="Submit" />
</form>
这也与您的count
值相同。您可以使用名为count
的其他GET值进行控制。