Javascript 在PHP中,我从mySQL编码了一个JSON数组。我想在不同的php文件中解码它
在Php中,我从MySQL表中编码了一个JSON数组。我想在不同的Php文件中解码它。我想通过JavaScript从不同的文件访问数据。任何人都可以帮助我 我的代码是:Javascript 在PHP中,我从mySQL编码了一个JSON数组。我想在不同的php文件中解码它,javascript,php,mysql,arrays,json,Javascript,Php,Mysql,Arrays,Json,在Php中,我从MySQL表中编码了一个JSON数组。我想在不同的Php文件中解码它。我想通过JavaScript从不同的文件访问数据。任何人都可以帮助我 我的代码是: $serverName = "(local)"; $connectionInfo = array( "Database"=>"sample"); $conn = sqlsrv_connect( $serverName, $connectionInfo); if( $conn ) { echo "Conne
$serverName = "(local)";
$connectionInfo = array( "Database"=>"sample");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn )
{
echo "Connection established.<br/>";
}
else
{
echo "Connection could not be established.<br/>";
die( print_r( sqlsrv_errors(), true));
}
$str="Select * from sam1";
$res=sqlsrv_query($conn,$str) or die("Error !");
$response=array();
while( $row = sqlsrv_fetch_array( $res, SQLSRV_FETCH_ASSOC) )
{
$response['tdata'][]=$row;
}
print(json_encode($response));
我的解码功能是:
$data = file_get_contents('db2.php');
$data1 = json_decode($data, true);
print($data1);
但它不起作用。当您返回
JSON
编码字符串时,最好发送正确的头。您应该像这样返回JSON
(您仍然可以使用print
函数):
$json = (include "db2.php");
echo json_decode($json, true);
在这个特定场景中,db2.php
必须像这样使用return
语句
return json_encode($response);
ob.*
与include
一起使用,这次您不需要在db2.php
文件中返回
ob_start();
include "db2.php";
$json = ob_get_contents();
ob_end_clean();
echo json_decode($json, true);
看起来您正在用db2.php文本填充$data,而不是用php运行文件的输出。试试这个:
$data = `php db2.php`
有什么问题吗?您的描述很难识别,请澄清。请使用
{}
按钮格式化代码。您现在可以为mysql使用sqlsrv
吗?我以为它只是针对SQL Server的,db2.php
文件做什么?它输出什么?如果您在解码文件中运行var\u dump($data)
,您可能会发现它输出原始PHP代码。谢谢您的朋友。。但是我没有得到答案(非常感谢你呀……我得到了答案:):)谢谢你的解释:)谢谢你的朋友。。但是我没有得到答案(
return json_encode($response);
ob_start();
include "db2.php";
$json = ob_get_contents();
ob_end_clean();
echo json_decode($json, true);
$data = `php db2.php`