鍍金池/ 問答/PHP  Linux/ php 部署到網(wǎng)絡(luò)服務(wù)器后就報錯?

php 部署到網(wǎng)絡(luò)服務(wù)器后就報錯?

在本地phpStudy環(huán)境下可以連接到數(shù)據(jù)庫,為什么放到網(wǎng)絡(luò)服務(wù)器后就報錯?

以下為請求代碼:

<?php
header("Content-type: text/html;charset=utf-8");//防止亂碼
//1、獲取鏈接
$conn=@mysql_connect("localhost","root","0123456zp");
if(!$conn){
    //mysql_error()是返回mysql的上一次操作
    die("連接失敗".mysql_error());
}else{
        //echo '連接成功!<br/>';
}
//2、選擇對應(yīng)的數(shù)據(jù)庫
@mysql_select_db("caiwu");
//3、設(shè)置操作編碼(可有可無,建議有)
mysql_query("set names utf8");//保證是按照utf8碼操作的【utf8無-的,有-的是網(wǎng)頁版的!?。。。。?!】

$draw = $_GET['draw']; //第幾次請求
//排序
$order_column = $_GET['order']['0']['column']; // 哪一列排序
$order_dir= $_GET['order']['0']['dir']; // ase desc 升序或者降序
//拼接排序sql
$orderSql = "";
if(isset($order_column)){
    $i = intval($order_column);
    switch($i){
        case 0;$orderSql = " order by id ".$order_dir;break;
        case 1;$orderSql = " order by kh ".$order_dir;break;
        case 2;$orderSql = " order by kj ".$order_dir;break;
        case 3;$orderSql = " order by cpx ".$order_dir;break;
        case 4;$orderSql = " order by zhd ".$order_dir;break;
        case 5;$orderSql = " order by afzhd ".$order_dir;break;
        case 6;$orderSql = " order by afxjd ".$order_dir;break;
        case 7;$orderSql = " order by zxrq ".$order_dir;break;
        case 8;$orderSql = " order by xs ".$order_dir;break;
        case 9;$orderSql = " order by crrq ".$order_dir;break;
        case 9;$orderSql = " order by skr ".$order_dir;break;
        case 9;$orderSql = " order by skzh ".$order_dir;break;
        default;$orderSql = '';
    }
}

//分頁
$start = $_GET['start'];//從多少開始
$length = $_GET['length'];//數(shù)據(jù)長度
$limitSql = '';
$limitFlag = isset($_GET['start']) && $length != -1 ;
if ($limitFlag ) {
    $limitSql = " LIMIT ".intval($start).", ".intval($length);
}

//定義查詢數(shù)據(jù)總記錄數(shù)sql
$sumSql = "SELECT count(id) as sum FROM financialdata";
//條件過濾后記錄數(shù) 必要
$recordsFiltered = 0;
//表的總記錄數(shù) 必要
$recordsTotal = 0;
$recordsTotalResult = mysql_query($sumSql,$conn);
while($row=mysql_fetch_assoc($recordsTotalResult)){
    $recordsTotal = $row['sum'];
}
//搜索//定義過濾條件查詢過濾后的記錄數(shù)sql
$search = $_GET['search']['value'];//獲取前臺傳過來的過濾條件
// 每列搜索
$j = 1;
$search_arr =array();
$colSearchSql='';
for($j=0;$j<6;$j++){
    $colSearchable = $_GET['columns'][$j]['searchable'];
    $colSearchVal = $_GET['columns'][$j]['search']['value'];
    if(strlen($colSearchVal)>0 && $colSearchable == 'true' ){
        switch ($j) {
            case 0: $colSearchVal = "id LIKE '%".$colSearchVal."%'";
                    array_push($search_arr,$colSearchVal);
                    break;
            case 1: $colSearchVal = "kh LIKE '%".$colSearchVal."%'";
                    array_push($search_arr,$colSearchVal);
                    break;
            case 2: $colSearchVal = "kj LIKE '%".$colSearchVal."%'";
                    array_push($search_arr,$colSearchVal);
                    break;
            case 3: $colSearchVal = "cpx LIKE '%".$colSearchVal."%'";
                    array_push($search_arr,$colSearchVal);
                    break;
            case 4: $colSearchVal = "zhd LIKE '%".$colSearchVal."%'";
                    array_push($search_arr,$colSearchVal);
                    break;
            case 5: $colSearchVal = "afzhd LIKE '%".$colSearchVal."%'";
                    array_push($search_arr,$colSearchVal);
                    break;
            case 5: $colSearchVal = "afxjd LIKE '%".$colSearchVal."%'";
                array_push($search_arr,$colSearchVal);
                break;
            case 6: $colSearchVal = "zxrq LIKE '%".$colSearchVal."%'";
                array_push($search_arr,$colSearchVal);
                break;
            case 7: $colSearchVal = "xs LIKE '%".$colSearchVal."%'";
                array_push($search_arr,$colSearchVal);
                break;
            case 8: $colSearchVal = "crrq LIKE '%".$colSearchVal."%'";
                array_push($search_arr,$colSearchVal);
                break;
            case 9: $colSearchVal = "skr LIKE '%".$colSearchVal."%'";
                array_push($search_arr,$colSearchVal);
                break;
            case 10: $colSearchVal = "skzh LIKE '%".$colSearchVal."%'";
                array_push($search_arr,$colSearchVal);
                break;
            default:
                # code...
                break;
        }
    }
}
if(empty($search_arr) == false){
    $colSearchSql = " WHERE ".implode(" AND ",$search_arr);
}
// 綜合搜索sql
// $zSearchSql =" where teacher_id || teacher_name || teacher_password || teacher_email || teacher_date || teacher_note LIKE '%".$search."%'";
$zSearchSql = " id LIKE '%".$search."%' OR kh LIKE '%".$search."%' OR kj LIKE '%".$search."%' OR cpx LIKE '%".$search."%' OR zhd LIKE '%".$search."%' OR afzhd LIKE '%".$search."%'OR afxjd LIKE '%".$search."%'OR zxrq LIKE '%".$search."%'OR xs LIKE '%".$search."%'OR crrq LIKE '%".$search."%'OR skr LIKE '%".$search."%'OR skzh LIKE '%".$search."%'";
// 拼接搜索SQL
$sumSearchSql = '';
if(strlen($colSearchSql)>0 && strlen($search)>0){
    $sumSearchSql = $colSearchSql." AND (".$zSearchSql.")";
}else if(strlen($colSearchSql)>0 && strlen($search)==0){
    $sumSearchSql = $colSearchSql;
}else if(strlen($colSearchSql)==0 && strlen($search)>0){
    $sumSearchSql = " WHERE ".$zSearchSql;
}else{
    $sumSearchSql = '';
}
if(strlen($sumSearchSql)>0){
    $recordsFilteredResult = mysql_query($sumSql.$sumSearchSql);
    while ($row = mysql_fetch_assoc($recordsFilteredResult)) {
        $recordsFiltered =  $row['sum'];
    }
}else{
    $recordsFiltered = $recordsTotal;
}
// query data
$sql='';
$totalResultSql = "SELECT * FROM financialdata";
$infos = array();
// 拼接最終SQL
$sql=$totalResultSql.$sumSearchSql.$orderSql.$limitSql;
$dataResult = mysql_query($sql,$conn);
while ($row = mysql_fetch_assoc($dataResult)) {
    // $obj = array($row['teacher_id'], $row['teacher_name'], $row['teacher_password'], $row['teacher_email'], $row['teacher_date'], $row['teacher_note']);
    // array_push($infos,$obj);
    array_push($infos,$row);

}
// return data
echo json_encode(array(
    "draw" => $draw,
    "recordsTotal" =>$recordsTotal,  // necessary
    "recordsFiltered" =>$recordsFiltered, // necessary
    "data" =>$infos // necessary
    ),JSON_UNESCAPED_UNICODE);

clipboard.png
放服務(wù)器報錯

clipboard.png
本地就沒問題 就大神指點 初接觸PHP

回答
編輯回答
巫婆

圖二 ,服務(wù)器端PHP版本過高,因為在PHP7中已經(jīng)完全移除了mysql_*系列函數(shù),導(dǎo)致函數(shù)不存在錯誤。

2018年2月9日 10:16
編輯回答
維他命

報錯的信息是說

$_GET['columns'][$j]['searchable'];

$_GET下沒有 columns這個鍵(key)

2018年6月21日 13:38
編輯回答
何蘇葉

網(wǎng)絡(luò)服務(wù)器PHP環(huán)境沒有安裝mysql擴展吧。
現(xiàn)在已經(jīng)不建議使用mysql擴展了,在PHP7中已經(jīng)移除了該擴展。
http://www.php.net/manual/zh/...

2018年4月26日 06:14