使用数据库中的值在ajax中使用if语句

时间:2014-01-24 08:40:06

标签: php jquery mysql ajax

我在数据库中有列名称状态它包含值(0,1),在前端我有图像如果我点击图像它将重定向到下一页我在这里使用ajax,我想要重定向之前它应该执行如果条件我想检查数据库列状态如果列包含任何行'1'它应该重定向如果列'0'中的所有行不检查if条件它将重定向任何人都可以指导我如何执行此操作.below是我的代码(即现在处于行状态,所有值都为0,它不会重定向它想要显示警报,但它的重定向)

HTML

<img  id='redirect'  src="/image/exporttt.png"  style="margin:-30 0 0 0px;cursor:pointer;"  >

$sql_selectsupplier  = "********";
$result1 = mysql_query($sql_selectsupplier);
while($rows=mysql_fetch_array($result1))
{
  $reditect=$rows['status'];
}

的Ajax

<script>

$(document).ready(function() {
    $("#redirect").click(function() {


        if($reditect=1){

     var clientid=document.getElementById("client").value;

        $.blockUI(

       { 

         message: '<h2>Please wait...</h2><img src="/image/loader.gif" />',
     timeout: 2000

       }); 


    $.ajax({
            type:"post",

        data:"clientid="+clientid,
        success:function(data){

                         window.location = '?action=clientroutingchange&clientid='+clientid+'';
                          $("#result").html(data);
                         $('.blockUI').hide();
        }
    }); 
        }
        else{

            alert("no changes made")
        }   

    });
});

</script>

2 个答案:

答案 0 :(得分:1)

使用==进行比较

if($reditect==1)

你的$ redirect是一个php变量,在脚本

中没有意义

所以,使用

var reditect = <?php echo $reditect ?>

并检查,

if(reditect==1)

答案 1 :(得分:1)

从您的代码中不清楚哪一个是PHP代码,哪一个不在PHP块中。

你的街区内有

if($reditect=1){这似乎不是一个javascript代码。

那是php吗?

如果是,那么你使用它是错误的方式。 =是一个赋值运算符,因此您可以通过这种方式明确指定值1

我建议,如果您使用的是PHP条件,也可以将其移到脚本块之外:

<?php if ($reditect == 1): ?> # `==` for comparison
    <script>
        var clientid=document.getElementById("client").value;
        // .. all the code
    </script>
<?php else: ?>
    <script>
        alert('.....');
    </script>
<?php endif; ?>

如果是Javascript条件,则需要将php变量的值赋给js var

<script>
var reditect = "<?= $reditect; ?>";
if (reditect == '1') {
   // something
</script>