CLi*_*own 5 php twitter ajax jquery
这是与jQuery .ajax结合使用的PHP代码,用于创建新的推文:
/* Create a TwitterOauth object with consumer/user tokens. */
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $access_token['oauth_token'], $access_token['oauth_token_secret']);
$qtweet = $_POST['tweet'];
$connection->post('statuses/update', array('status' => $qtweet));
Run Code Online (Sandbox Code Playgroud)
数据由表单和一些jQuery .ajax提供:
<form id="tweethis" method='post' action=''>
<textarea style="width: 42em;" name="tweet" rows="5" id="tweet" ></textarea>
<br />
<p class="confirm" style="padding-bottom: 4px;">Tweet Sent.</p>
<span id="charLeft">140</span> Characters left
<br />
<input type='submit' value='Tweet This!' name='submit' id='submit' />
</form>
$("#tweethis #submit").click(function() {
//The Tweet
var tweettxt = $("textarea#tweet").val();
var ptweettxt = 'tweet=' + tweettxt;
$.ajax({
type: "POST",
url: "tweet.php",
data: ptweettxt,
success: function() {
$('#tweethis .confirm').css('color','red').slideDown(500).delay(3000).slideUp(500);
$('textarea#tweet').val("");
}
});
return false;
});
Run Code Online (Sandbox Code Playgroud)
我想调整表单以处理回复,因此用户可以单击推文的ID,该ID将添加到FORM中.FORM将需要另一个隐藏字段,该字段最初将为空白,因此当用户提交没有回复ID时,他们只发送一条推文.
但是我需要PHP文件中的一些代码来检查_POST是否为空或null,如果null只发送一条推文但是如果它有一个ID则创建一个回复.
如果字段为空或填充了ID,我该如何检查?
我还需要帮助创建回复.
文档在这里:http://dev.twitter.com/doc/post/statuses/update
这是我到目前为止为PHP编写的内容:
$qtweet = $_POST['tweet'];
$tweetid = $_POST['tweetid'];
$connection->post('statuses/update', array('status' => $qtweet, 'in_reply_to_status_id => $tweetid'));
Run Code Online (Sandbox Code Playgroud)
不确定我是否正确构建数组或者这是Twitter API可接受的.
与所有这些相比,.ajax将是微不足道的,因为我将隐藏的表单值作为_POST中的另一个值传递.
任何对此的帮助都非常感激,这是我完成我的第一个PHP项目的最后一件事,我创建了自己的Twitter客户端,专门用于会议,其中使用标签来跟踪后台频道.
你使用empty()来检查是否有东西是空的=)
你还需要纠正这一行......
$connection->post('statuses/update', array('status' => $qtweet, 'in_reply_to_status_id' => $tweetid));
Run Code Online (Sandbox Code Playgroud)
不要将变量放在引号中
也许像
if ( empty( $_POST['tweetid'] ) ) {
$connection->post('statuses/update', array('status' => $qtweet));
}
else {
$connection->post('statuses/update', array('status' => $qtweet, 'in_reply_to_status_id' => $_POST['tweetid']));
}
Run Code Online (Sandbox Code Playgroud)
您只需将推文的 ID 放入表单中即可