首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >$_GET和isset() url响应Json

$_GET和isset() url响应Json
EN

Stack Overflow用户
提问于 2015-06-12 02:23:58
回答 1查看 273关注 0票数 0

我在这里使用了很多答案来解决几乎所有的问题,但是我想不出如何做到这一点;我使用PHP从我的MySQL中获取数据,并使用url请求对json进行编码,所以我转到miweb。com /_js/ajax/load_content.php?f=1我从我的数据库获得一个完美的响应,并回送到json编码,1表示id为1的用户,我的响应如下所示:

代码语言:javascript
复制
[{"i":"1","n":"Azul","p":"_imgs\/site\/iconos\/0-100\/22\/activo\/ico_00022_138.jpg"}]

如果我去miweb。com/_js/ajax/load_content.php?F=2i将得到

代码语言:javascript
复制
[{"i":"2","n":"Lety","p":"_imgs\/site\/iconos\/0-100\/87\/activo\/ico_00087_138.jpg"}]

我需要完成的是去?f=1,2

miweb.com /_js/ajax/load_content.php?f=1,2,并在相同的json中获得如下响应

代码语言:javascript
复制
  [{"i":"1","n":"Azul","p":"_imgs\/site\/iconos\/0-100\/22\/activo\/ico_00022_138.jpg"},
  {"i":"2","n":"Lety","p":"_imgs\/site\/iconos\/0-100\/87\/activo\/ico_00087_138.jpg"}]

这是我的php脚本:

代码语言:javascript
复制
    require  '../../system/config.php';
if( isset($_GET['h']) ) {
    get_ficha($_GET['h']);

} else {
    die("Solicitud no válida.");
}
function get_ficha( $id) {
    // CONECCION DATABASE//
    $database = new mysqli(HOST, USER, PASS, DBNAME);
    if($database->connect_errno) {
        die("No se pudo conectar a la base de datos");
    }
    mysqli_set_charset($database, "utf8");
    //Sanitize ipnut y preparar query
    if( is_array($id) ) {
        $id = array_map('intval', $id);
        $promo = "WHERE `ID` IN (" . implode( ',', $id ) . ")";
    } else {
        $id = intval($id);
        $promo = "WHERE `ID` = " . $id;
    }
    if ( $result = $database->query( "SELECT * FROM (ficha)" . $promo) ) {
        if( $result->num_rows > 0 ) {
                     $promo  = array();
                     while( $row = mysqli_fetch_array($result)) 
                     { 
                        $id=$row['id'];
                        $nombre=$row['nombre'];
                        $icono=$row['ico_138'];
                        $promo[] = array(
                            'i'=> $id,
                            'n'=> $nombre,
                            'p'=> $icono
                        );
                    }
        } else {
            $promo = array(

                );  
        }
        $result->close();
    } else {
        $promo["success"] = false;
        $promo["data"] = array(
                    'message' => $database->error
                );
    }
    header('Content-type: application/json; charset=utf-8');
    echo json_encode($promo, JSON_UNESCAPED_UNICODE);
    $database->close();
}
exit();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-12 02:33:37

你需要引爆get变量

代码语言:javascript
复制
get_ficha(explode(',', $_GET['h']));

然后在你的职能中

代码语言:javascript
复制
    if( is_array($id) && count($id) > 1) {
        $id = array_map('intval', $id);
        $promo = "WHERE `ID` IN (" . implode( ',', $id ) . ")";
    } else {
        $id = intval($id);
        $promo = "WHERE `ID` = " . $id;
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30794427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档