如何使用jQuery / AJAX加载页面并发送数据?

时间:2014-07-30 22:04:19

标签: php jquery mysql ajax

我会尽可能清楚地说明这一点。

所以我有一个链接,点击一下即可将一些数据提交到我的数据库。

<a href='' id='likePost' ><i class='fa fa-thumbs-up'></i></a>

所以当点击这个链接时,我想要一些与&#34; post&#34;相关的数据。发送到PHP文件,然后处理到MySQL数据库。

我现有的jQuery如下:

<script type="text/javascript">// <![CDATA[
$(function(){
    $("#likePost").click(function(event){ 
        $.ajax({
            type:"POST",
            url:"functions/likePost.php",
            data:"post=<?= $post['unique_post_id'] ?>",
            success:function(html){
                alert("Liked post = success")
            }

        });
});
// ]]></script> 

在这个阶段,我想指出的一件事是,每个帖子都有一个唯一的ID,可以通过$post['unique_post_id']调用。

我的PHP文件代码是:

<?php 
session_start();
require_once("../global.php");

$unique = $_POST['post'];

/* FIND USER ID OF TARGET (OWNER OF POST) */
$findID = $connection->query("SELECT userid FROM posts WHERE unique_post_id='{$unique}'");
$id = $findID->fetch_assoc();

/* INSERT LIKE INTO DB */
$time = time();
$qry = $connection->query("INSERT INTO posts_likes (id, from_user_id, target_user_id, unique_post_id, time) VALUES (NULL, '{$_SESSION['SESS_MEMBER_ID']}','{$id}','{$unique}', '{$time}')");

?>

然而,这一切都无效。我非常确定AJAX代码存在问题。我有什么想法可以实现这个目标吗?

快速总结一下,我需要的是:

  

点击 - &gt; TRIGGER AJAX代码? - &GT;加载带有附加数据的PHP文件(唯一的帖子ID) - &gt; PHP FILE INSERTS QUERY。

希望我能够尽可能清楚地表示感谢:)

(如果我看起来很高兴,我的年龄可能是一个原因:15)

1 个答案:

答案 0 :(得分:1)

您应该打开浏览器控制台并查看正在抛出的错误。 基于我读过你的数据定义的脚本看起来不对,我相信它想要一个像

这样的对象
$.ajax({
    data: { post : '23', id: '32' }
});

您应该通过不使用href属性或href="#"或使用

来阻止默认点击重新加载您的网页
$('element').click(function(e){
    e.preventDefault();
}