检查值然后指向不同的页面

时间:2013-06-13 10:27:08

标签: php javascript jquery jquery-mobile cordova

我正在使用jquery mobile开发Android应用程序。我在应用程序中有多个页面。除index.html之外的所有页面都是数据库驱动的。

我希望id在特定链接中没有db中的任何细节,然后它不应该被定向到转发页面。我已经使用javascript函数来检查它,但它不起作用。

function check_category(b_id){

$.ajax({
        url:'http://localhost/ajax_practice/php/get_categories.php?b_id='+b_id,
        dataType: 'jsonp',
        jsonp: 'jsoncallback',
        timeout: 5000,
        success:function(data,status){

            if(data.success==0){
                return false;
            }else{
                return true;
            }
        }
    });             
}

PHP代码:

<?php
    header('Content-type: application/json');

    include 'connect.php';

    $b_id=$_GET['b_id'];


    $sql_select=mysql_query("SELECT * FROM businesses JOIN business_category ON business_category.b_id = businesses.id WHERE b_id=$b_id") or die(mysql_error());

    $records = array();

    if(mysql_num_rows($sql_select)>0){

        while($row=mysql_fetch_array($sql_select)){
            $records[] = $row;  
        }
        //print_r($records);
        echo $_GET['jsoncallback'] . '(' . json_encode($records) . ');';
    }else{

        $records= array(
            'success'=>0,
        );  
        echo $_GET['jsoncallback'] . '(' . json_encode($records) . ');';
    }

?>

基本上我想要的是,如果与该业务出口相关的数据在类别表中,那么它必须返回true,否则为false;所以href没有设置为true或false。

1 个答案:

答案 0 :(得分:0)

像这样修改你的脚本:

function check_category(b_id){

$.ajax({
    url:'http://localhost/ajax_practice/php/get_categories.php?b_id='+b_id,
    dataType: 'json',
    timeout: 5000,
    success:function(data,status){

        if(data.success==0){
            return false;
        }else{
            return true;
        }
    }
   });             
}

并编辑你的php:

   if(mysql_num_rows($sql_select)>0){
        $records['success']=1;
        while($row=mysql_fetch_array($sql_select)){
            $records['data'][] = $row;  
        }

    }else{
        $records['success']=0;
    }
    echo json_encode($records);