A. javascript用ajax向PHP传json格式数据,在PHP文件中应该怎样接
你传送之前
alert(json.key)
看一下有没有变为正确json数据。
也可以这样
for(var
i
in
json){
alert(i+":"+json[i]);
}
B. php 上传文件接口如何编写
require_once"../common_mysql.php";
require_onceMESSAGE_PATH.'zh/zh_calendar_message.php';
require_once"function_common/user_function.php";
require_once"function_common/public_function.php";
global$DB;
$sql_time=microtime(true);
//$uid=$self_userid;
//保存图片
$json_result['status']=0;
$path='upfile';
$json_result['status']=0;
$json_result['successmsg']='上传失败';
if(isset($_FILES['imageZip'])){
$upfile='upfile/'.$_FILES['imageZip']['name'];
if(!@file_exists($path)){
@mkdir($path);
}
$result=@move_uploaded_file($_FILES['imageZip']['tmp_name'],$upfile);
if(!$result){
$json_result['status']=0;
$json_result['successmsg']='上传失败';
$json_result['datas']=array('savePath'=>$upfile);
exit(json_encode($json_result));
}
}
$json_result['status']=1;
$json_result['datas']=array('savePath'=>$upfile);
C. 请教:php如何实现json的传值
代码都基于jquery
jsonp 可以跨域 例如:
$.ajax({
url:'example.php',
type:'GET',
dataType:'jsonp',
jsonp:'callback',
success:function(data){
/*比如example.php是这样<?php
$callback=$_REQUEST['callback'];
echo$callback.'('.json_encode(array('id'=>1)).')';?>
这里的data就是{"id":1}
*/
}
});
不跨域 ajax就可以 例如:
$.ajax({
url:'example.php',
type:'GET',
dataType:'json',
success:function(data){
//这个data就是返回的json即example.php输出的json
比如example.php是这样<?phpechojson_encode(array('id'=>1));?>
返回的json就是{"id":1}
}
});
D. php如何发送和接收JSON数据
对于json,PHP有对应的方法进行操作。
一般而言,json会以字符串形式传给版PHP脚本,一般都是放在$_POST里面,
14
<?php
// 接收权
$json_parameter = $_POST['json_str'];
// 处理, 变成数组
$array = json_decode($json_parameter);
// PHP 把数组数据变成json格式字符串,发给页面
$demo = array(
'key' => 'value',
'key2' => 'value2'
);
$demo_json = json_encode($demo); // 格式是{"key":"value","key2":"value2"}
echo $demo_json;
E. php 和json传参的问题
变量带进去解析,这就传进去了。示例如下:
$test=123;
POSTFILED=>'{
......
"message":"'.$test.'"
}';
F. 如何用php给一个php页面发送大量数据,格式是json数据,里面有许多行
//采集的信息需要先登录的就要先模拟登录
//设置cookie保存路径
$ch=curl_init();
//组装用户名和密码
$info['username']=$this->username;
$info['password']=$this->pwd;
//模拟表单提交
$params[CURLOPT_URL]=$this->url;//请求url地址
$params[CURLOPT_HEADER]=true;//是否返回响应头信息
$params[CURLOPT_RETURNTRANSFER]=true;//是否将结果返回
$params[CURLOPT_FOLLOWLOCATION]=true;//是否重定向
//$params[CURLOPT_SSL_VERIFYPEER]=true;//https请求不验证证书和hosts
//$params[CURLOPT_SSL_VERIFYHOST]=true;//https请求不验证证书和hosts
$params[CURLOPT_USERAGENT]='Mozilla/5.0(WindowsNT5.1;rv:9.0.1)Gecko/20100101Firefox/9.0.1';
$postfields='';
//将表单要提交的数据编程URL拼接方式
foreach($infoas$key=>$value){
$postfields.=urlencode($key).'='.urlencode($value).'&';
}
$params[CURLOPT_POST]=true;
$params[CURLOPT_POSTFIELDS]=$postfields;
//判断是否有cookie,有的话直接使用
/*
if(isset($_COOKIE['cookie_jar'])&&($_COOKIE['cookie_jar']||is_file($_COOKIE['cookie_jar']))){
$params[CURLOPT_COOKIEFILE]=$_COOKIE['cookie_jar'];//这里判断cookie
}else{
$cookie_jar=tempnam($this->cookie_path,'cookie');//产生一个cookie文件
$params[CURLOPT_COOKIEJAR]=$cookie_jar;//写入cookie信息
setcookie('cookie_jar',$cookie_jar);//保存cookie路径
}
*/
curl_setopt_array($ch,$params);//传入curl参数
$content=curl_exec($ch);//执行