Home >Backend Development >PHP Tutorial >appcan开发提示异常syntax error, unexpected ']' expecting T_STRING or T_VARIABLE or T

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

WBOY
WBOYOriginal
2016-06-13 12:21:291601browse

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
nbsp;html>

  


     <br>    
    
    
    
    
    
    
    
    
    

    <script></script>
<script></script>
    <script></script>
    <script></script>
  





  
 



 

     

 


<script></script>
<script></script>
<script></script>
<script><br />zy_init();<br />window.uexOnload=function(type)<br />{<br /> if(!type){<br /> }<br /> getBookList();<br />}<br /><br /></script>


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"); 这一句。
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn