Php 在while循环中单击AJAX更新数据库

Php 在while循环中单击AJAX更新数据库,php,mysql,ajax,wordpress,while-loop,Php,Mysql,Ajax,Wordpress,While Loop,我正在为WordPress系统开发一个插件,用于一些定制的媒体评论目的。我已经设置了大部分的东西,但很少有更多 目前,我坚持在单击(onlink)时更新数据库,以使用AJAX更新表值。请参阅下面的代码。它有while循环,我想在循环中使用AJAX来更新媒体状态。我不确定这是正确的方法还是有另一种简单的方法来实现它。如有任何建议,将不胜感激 代码: <?php $media_item = mysql_query($media_sql); if ($media_item) { echo '

我正在为WordPress系统开发一个插件,用于一些定制的媒体评论目的。我已经设置了大部分的东西,但很少有更多

目前,我坚持在单击(onlink)时更新数据库,以使用AJAX更新表值。请参阅下面的代码。它有while循环,我想在循环中使用AJAX来更新媒体状态。我不确定这是正确的方法还是有另一种简单的方法来实现它。如有任何建议,将不胜感激

代码:

<?php
$media_item = mysql_query($media_sql);

if ($media_item) {

echo '<ul class="rm-media-list">'; 

    while ($media = mysql_fetch_array($media_item)) {

        $m_uid = $media['user_id'];
        $m_uname = $media['user_login'];

        $media_class = new q2a_review_media;
        $thumb_path = $media_class->rm_thumbnail_url($pid,$m_uid);
        $media_url = $media_class->rm_media_url($pid,$m_uid);
        $mediaid = $media['id'];
        $image_name = $media['image_name'];                                

        echo '<li>';
        echo '<span class="rm-media-user"><a href="'.admin_url( 'user-edit.php?user_id=' . $m_uid, 'http' ).'">',$m_uname,'</a></span>';
        echo '<a href="'.$media_url.$image_name.'" rel="lightbox['.$pid.']" title="Post: '.$pid.' |  '.$ptitle.' | Image: '.$image_name.' | by: '.$m_uname.' " ><img src="'.$thumb_path.$image_name.'" alt="'.$media['image_name'].'" width="56" class="rm-thumbs-list" /></a>';
        echo '<span class="rm-action-links"><a href="#" id="approve-'.$mediaid.'" >Approve</a> | <a href="#" id="delete-'.$mediaid.'" >Delete</a></span>';                            
        echo '</li>';
    }

} else {

    echo 'No media found';

}

echo '</ul>';                        
?>

数据库表:

我的插件页面输出

在上图中,您可以看到名为
Approve
|
Delete
的链接,我想在这里使用ajax与数据库进行交互。当管理员单击
Approve
时,它会将
状态
列中的值从0更新为1;当
删除
时,它会从目录中删除行和图像。希望我发布了足够的数据来理解。如果没有,请让我知道,我将尝试添加更多信息


万分感谢……)

首先,你的陈述是“回音”需要在循环的
部分中

AJAX代码不必在while循环中。下面是如何操作代码以发出AJAX请求

让我们首先稍微修改一下您的
标记:

<a href="#" class="approve-button" id="'.$mediaid.'">Approve</a>
some page.php
而言,这是您需要做的:

  • 拥有将对数据库进行更改的SQL语句
  • 要访问附加到单击的approve按钮的ID,可以使用
    $\u POST
    数组,因为AJAX请求的类型为“POST”。具体来说,这是您的ID存储的位置:
    $\u POST['ID']

仅供参考:要在页面上导入jQuery,您可以使用:

<script src='http://code.jquery.com/jquery-latest.min.js' type='text/javascript'></script>


您是如何让AJAX请求工作的?我在循环中没有看到任何ajax逻辑,我甚至不知道如何在循环中开始。我正在寻找完整的工作代码,但需要一些启动路径和一些解释,比我可以开始工作。我检查了两个视频,但没有一个视频显示如何在循环中使用,也没有仅用于链接的表单。这适用于非WordPress系统,但不适用于WordPress。我的意思是一切都很好,但是当ajax调用页面时,它没有考虑代码,也不确定问题出在哪里。我从来没有使用过WordPress,选择答案也没问题,因为它适用于普通的ajax调用。谢谢。
<script src='http://code.jquery.com/jquery-latest.min.js' type='text/javascript'></script>