使用javaScript从PHP读取Json
我的PHP代码是:使用javaScript从PHP读取Json,php,javascript,json,webserver,request,Php,Javascript,Json,Webserver,Request,我的PHP代码是: <?php class Sample{ public $name = "N3mo"; public $answer = ""; } if( isset( $_GET['request'] ) ){ echo "Starting to read "; $req = $_GET[ 'request' ]; $result = json_decode($req); if( $result->request ==
<?php
class Sample{
public $name = "N3mo";
public $answer = "";
}
if( isset( $_GET['request'] ) ){
echo "Starting to read ";
$req = $_GET[ 'request' ];
$result = json_decode($req);
if( $result->request == "Sample" ){
$ans = new Sample();
$ans->answer = " It Is Working !!! ";
echo json_encode($ans);
}else{
echo "Not Supported";
}
}
?>
但php无法读取此输入,或者它不知何故是错误的
谢谢你你走对了路;PHP输出一个结果,您可以使用AJAX获得该结果。当您在浏览器中查看它时,由于浏览器对JSON数据的解释,它自然会向您显示一个HTML结果 要将该数据转换为JavaScript,请使用:
这将非常简单:
$.getJSON('/path/to/php/server.php',
{request: JSON.stringify({request: 'Sample'})}).done(function (data) {
console.log(data);
});
您可以将其包含在标记中,也可以包含在包含的JavaScript文件中,以便在需要时使用。尝试一下。它使用jQuery加载从服务器URL输出的内容
<!DOCTYPE html>
<html>
<head>
<title>AJAX Load Test</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script>
$(document).ready(function() {
$("#button").click(function(event) {
$('#responce').load('php_code.php?request={"request":"Sample"}');
});
});
</script>
</head>
<body>
<p>Click on the button to load results from php_code.php:</p>
<div id="responce" style="background-color:yellow;padding:5px 15px">
Waiting...
</div>
<input type="button" id="button" value="Load Data" />
</body>
</html>
下面的代码是您的代码的修订版本。存储在一个名为php_code.php的文件中,存储在与上面相同的目录中,然后进行测试
<?php
class Sample
{
public $name = "N3mo";
public $answer = "";
}
if( isset( $_GET['request'] ) )
{
echo "Starting to read ";
$req = $_GET['request'];
$result = json_decode($req);
if( isset($result->request) && $result->request == "Sample" )
{
$ans = new Sample();
$ans->answer = " It Is Working !!! ";
echo json_encode($ans);
}
else
{
echo "Not Supported";
}
}
让我知道你的进展如何是的,你需要一个ajax电话。只需使用jQuery之类的库来完成繁重的工作,或者只需使用google来获取ajax调用的示例??你在JS中没有得到结果吗??您正在使用AJAX吗?显示当前的javascript,它正在将thsi数据发送到上面的php脚本。
<!DOCTYPE html>
<html>
<head>
<title>AJAX Load Test</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script>
$(document).ready(function() {
$("#button").click(function(event) {
$('#responce').load('php_code.php?request={"request":"Sample"}');
});
});
</script>
</head>
<body>
<p>Click on the button to load results from php_code.php:</p>
<div id="responce" style="background-color:yellow;padding:5px 15px">
Waiting...
</div>
<input type="button" id="button" value="Load Data" />
</body>
</html>
<?php
class Sample
{
public $name = "N3mo";
public $answer = "";
}
if( isset( $_GET['request'] ) )
{
echo "Starting to read ";
$req = $_GET['request'];
$result = json_decode($req);
if( isset($result->request) && $result->request == "Sample" )
{
$ans = new Sample();
$ans->answer = " It Is Working !!! ";
echo json_encode($ans);
}
else
{
echo "Not Supported";
}
}