• 技术文章 >后端开发 >php教程

    appcan开发提示异常syntax error, unexpected ']' expecting T_STRING or T_VARIABLE or T

    2016-06-13 12:21:29原创1011

    appcan开发提示错误syntax error, unexpected ']', expecting T_STRING or T_VARIABLE or T_
    1server.php
    date_default_timezone_set("Asia/Shanghai");
    header("Content-Type: text/html; charset=utf-8");
    require_once("Config.php");
    ?>


    $request = $_GET['jsoncallback'];

    //sql查询语句
    $sql = "SELECT Id,Bookname,Pubdate,Author FROM td_book where tid=".$Id.";
    $query = mysql_query($sql);
    //给Json数组赋值
    while($row=mysql_fetch_array($query))
    {
    $demoData[]=array(
    'tid'=>'$row['Id']',
    'subject'=>$row['Bookname'],
    'dateline'=>$row['Pubdate'],
    'author'=>$row['Author'],
    );
    }

    //让Json支持中文UTF-8编码
    class Json{

    public static function encode($str){

    $code = json_encode($str);

    return preg_replace("#\\\u(([0-9a-f]+?){4})#ie", "iconv('UCS-2', 'UTF-8', pack('H4', '\\1'))", $code);

    }

    public static function decode($str){

    return json_decode($str);

    }

    }

    //json数据返回客户端
    echo $request.'('.json_encode($demoData).')';
    //关闭数据库
    exit;
    ?>

    2页面html



    <br />


































    3book.js

    /**
    * 客户端与服务器端数据交互示例
    *
    *
    */

    /**
    * 服务器地址
    */
    var bookHost = "http://localhost:1000/server.php?jsoncallback=?";

    /**
    * js端base64实例化
    */
    var b64 = new Base64();


    /**
    * 网络请求中转函数
    *
    * @param {Object} url 服务器请求地址
    * @param {Object} callback 回调函数
    */
    function xmlHttp(url,callback){
    if(url == ''){
    uexWindow.alert('参数错误','请求地址不能为空!','返回');
    }else{
    $.getJSON(url,callback);
    }
    }

    /**
    * 获取帖子列表
    */
    function getBookList(){
    uexWindow.toast("1","5","数据加载中…","0");

    var url = bookHost;
    xmlHttp(url,showList);
    }

    /**
    * 回调函数,用于处理服务器端返回的帖子数据,显示在客户端上
    * @param {Object} items 服务器端返回的json数据
    */
    function showList(items){
    var forumObj = $("#book_list");
    forumObj.html('');

    for(var i in items){
    var item = items[i];

    var tr = '';
    var trHeader = '
    ';
    var trTitle = '
    '+b64.decode(item.subject)+'
    ';
    var trOtherInfo = '
    '+b64.decode(item.dateline)+' '+b64.decode(item.author)+'
    ';
    var trFooter = '
    ';
    tr = trHeader+trTitle+trOtherInfo+trFooter;
    forumObj.append(tr);
    }
    uexWindow.closeToast();
    }



    提示错误
    Parse error: syntax error, unexpected ']', expecting T_STRING or T_VARIABLE or T_NUM_STRING in D:\WWW\server.php on line 17

    求解!!!
    我想显示的结果是


    ------解决思路----------------------
    第一处:
    $sql = "SELECT Id,Bookname,Pubdate,Author FROM td_book where tid=".$Id.";
    最后是一个双引号,显然是不合语法的,因为除了在引号中,引号必须成对出现
    现在你把他的伴侣拐跑了,他就要让你哭了

    第二处:
    'tid'=>'$row['Id']',
    单引号中的单引号和双引号中的双引号,都必须转义,否则 php 不知道引号括起了什么
    单引号中的变量不会被取值,显然你这也不符合业务需求
    ------解决思路----------------------
    $query = mysql_query($sql) or die(mysql_error()) ;
    就看到哪儿不对了
    ------解决思路----------------------
    No database selected 没有选择数据库
    在你的 Config.php 中并没有看到 mysq_select_db 函数的使用
    ------解决思路----------------------
    你没选择数据库,少了mysql_select_db("tyshichang"); 这一句。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:nbsp gt lt script css
    上一篇:这种神秘写法是如何弄的 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 一文详解PHP用流方式实现下载文件(附代码示例)• PHP反序列化入门总结(小白必看)• PHP原生类的总结分享• 聊聊PHP escapeshellarg函数使用的中文问题• 分享PHP函数使用小工具(附代码示例)
    1/1

    PHP中文网