单击按钮上的SQL查询

时间:2013-01-11 09:53:09

标签: php html button

我想问一下当按下HTML按钮时如何调用Sql查询。我看了几个教程,但从来没有让它正常工作,这就是为什么我想在这里问。

所以..我有一个显示的项目列表,列表是从数据库生成的。代码如下所示:

<table width="100%" border="1" cellspacing="1" cellpadding="5" style="background-color:#FFC" >
<td>Id</td>
<td>Text</td>
<td>Solved?</td>
<td></td>
<?php
while( $array = mysql_fetch_assoc($queryRun) ) {
    ?><tr>
    <td><?php echo $id = $array['id'].'<br />';?></td>
    <td><?php echo $text = $array['text'].'<br />';?></td>
    <td><?php echo $reseno = $array['solved'].'<br />';?></td>
    <td><input type="button" value="Solve it" /></td>
    </tr><?php
}?>
</table>

现在,在这个循环中生成的每个项目在表的末尾都有一个“Solved”按钮,我想在用户点击该按钮时这样做,做一个Sql查询,改变一个值来解决0(假)到1(真)。

2 个答案:

答案 0 :(得分:0)

你需要ajax。写按钮onclick并进行ajax调用。

答案 1 :(得分:0)

我没有对此进行测试,但它应该有效。

基本上我已经将一个类应用于任何东西以便在jQuery中轻松选择:

<?php while ($array = mysql_fetch_assoc($queryRun)) { ?>
<tr class="row">
    <td class="cell_id">
        <?php echo $array['id']; ?>
    </td>
    <td class="cell_text">
        <?php echo $array['text']; ?>
    </td>
    <td class="cell_solved">
        <?php echo $array['solved']; ?>
    </td>
    <td class="cell_solve_it">
        <input class="button_solve_it" type="button" value="Solve it" />
    </td>
</tr>
<?php } ?>

然后我创建了这个简短的jQuery脚本:

$('.row').each(function(){
    $('.button_solve_it', this).click(function(e){
        e.preventDefault();
        $.post(
            'solve_query.php',
            {
                id: $('.cell_id', this).html(),
                text: $('.cell_text', this).html()
            },
            function (data) {
                $('.cell_solved', this).html('1');
            }
        );
    });
});

简而言之: 单击.button_solve_it按钮时,向solve_query.php发出AJAX请求,在那里执行SQL查询。 然后,它会将Solved?列中的行内容设置为1(或true或您想要的任何内容。)