2013-12-20 103 views
1

我是这个json chapter中的新东西。我有一个名为mysql_conn.php的文件。这个文件有一个php函数来调用mysql数据库中的数据。任何人都可以帮助我创建一个json文件得到mysql_conn.php.Below数据是我的代码在函数中获取json数据php

mysql_conn.php

function getWrkNoTest($wrkno){ 

    $conf = new BBAgentConf(); 
    $log = new KLogger($conf->get_BBLogPath().$conf->get_BBDateLogFormat(), $conf->get_BBLogPriority()); 
    $connection = MySQLConnection(); 

    $getWrkNoTest =""; 
    $lArrayIndex = 0; 

     $query = mysql_query(" 
           SELECT 
            a.jobinfoid, 
            a.WRKNo, 
            a.cate, 
            a.det, 
            a.compclosed, 
            a.feedback, 
            a.infoID, 
            b.callerid, 
            b.customername 
           FROM bb_jmsjobinfo a 
           LEFT JOIN bb_customer b 
            ON a.customerid = b.customerid 
           WHERE a.WRKNo = '$wrkno';" 
     ); 

    $result = mysql_query($query); 

    $log->LogDebug("Query[".$query."]"); 

    while ($row = mysql_fetch_array($result)){ 
      $getWrkNoTest = array("jobinfoid"=>$row['jobinfoid'], 
       "WRKNo"=>$row['WRKNo'], 
       "cate"=>$row['cate'], 
       "det"=>$row['det'], 
       "compclosed"=>$row['compclosed'], 
       "feedback"=>$row['feedback'], 
       "infoID"=>$row['customerid'], 
       "customerid"=>$row['infoID'], 
       "callerid"=>$row['callerid'], 
      "customername"=>$row['customername']); 

      $iList[$lArrayIndex] = $getWrkNoTest; 
      $lArrayIndex = $lArrayIndex + 1; 

     } 
     $QueryResult = print_r($getWrkNoTest,true); 
     $log->LogDebug("QueryResult[".$QueryResult."]"); 
     closeDB($connection); 
     return $iList; 
} 

json.php

if ($_GET['action']=="getJsonjms"){ 
     $wrkno = $_GET["wrkno"]; 

     if($wrkno != ""){ 
      $jms = getWrkNoTest($wrkno); 
      if(!empty($jms)){     
       echo json_encode($jms); 
      }else{ 
       echo "No data."; 
      } 
     }else{ 
      echo "Please insert wrkno"; 
     } 

} 

我不知道如何解决这个问题。也许可以使用foreach或其他的东西。为我的坏英语或糟糕的解释。我在这个JSON的东西真的是新的。任何帮助将不胜感激。谢谢

+0

究竟是什么问题?您是否试图将mysql查询的结果保存到实际的json文件(如'results.json')中? – newfurniturey

+0

是的。我想创建一个json文件来保存mysql_conn.php文件中的数据。 – art

+0

是否可以创建一个json文件来从另一个文件中的php函数中获取数据。但是如何? – art

回答

0

如果我理解你的问题是正确的,你想将你从MySQL查询得到的结果转换成JSON,然后将这些数据存储到一个文件中?

如果这是正确的,你可以建立你目前在json.php。在这里该块,您使用json_encode()

if(!empty($jms)){     
    echo json_encode($jms); 
} 

我们可以利用这些数据,并把它传递给file_put_contents()把它放到一个文件:

if (!empty($jms)) { 
    $json = json_encode($jms); 

    // write the file 
    file_put_contents('results.json', $json); 
} 

如果这是一个脚本/页者经常去的,您需要将文件名(以上为results.json)变为更具动态性的内容,可能基于​​或其他某个模式。