php中以json格式输出数据

本文介绍了一个使用PHP解决跨域问题的方法,并通过JSON数据格式处理数据库查询结果。文章详细展示了如何设置HTTP头部信息以允许跨域请求,以及如何定义函数来输出JSON格式的数据。此外,还提供了一个具体的例子,演示了从数据库中获取数据并将其转换为JSON格式的过程。
摘要由CSDN通过智能技术生成
<?php
header('Access-Control-Allow-Origin: *');  //解决跨域问题header('Content-type: text/json'); //定义编码JSON//定义函数,输出json
function json($result_number,$result=array()){     $result=array(     'result_number'=>$result_number,          'picture'=>$result      );     //输出json    
 echo json_encode($result,JSON_UNESCAPED_UNICODE);//JSON_UNESCAPED_UNICODE--- 解决数据传输过程的中文传输问题   exit;  } //解决 PHP 中提示的undefined index
 function _post($str){    $val = !empty($_POST[$str]) ? $_POST[$str] : null;   
  return $val;}
  $picture_url=array("Card/door","Card/door","Card/market","Card/people","Card/tiger","Card/tiger2"); $picture_name=array("虎头","牛头","虎头","邮票羊","邮票马","寿星");
 $phonenumber=_post('phonenumber');
 $servername = "localhost";
 $username = "root";
 $password = "";
 $dbname="wanniba";
 $conn=mysqli_connect("$servername","$username","$password","$dbname");
 if (!$conn) {    echo "连接失败";    die("connection failed:" . mysqli_connect_error());}
 $conn->query("set names utf8");
 $sql = "SELECT state1,state2 FROM `yiboyuan` WHERE usename='$phonenumber'";$resultSet = mysqli_query($conn,$sql);
 $sqli =  mysqli_num_rows($resultSet);//返回数组的数据条数$dataarr = array();
  if(mysqli_num_rows($resultSet)>0)
  { while($row = mysqli_fetch_assoc($resultSet)) {     $row1=$row["date"];     $row["date"]=strtotime("$row1");//strtotime函数将时间转换成时间戳的形式  
    $dataarr[]=$row; }echo json($sqli,$dataarr);//以json格式输出数据}
    else{   
       echo '0';   
         for($i=1;$i<6;$i++){   
              $sql="INSERT INTO `yiboyuan`(`id`, `usename`,`number`,`pictureUrl`,`name`,`author`,`state1`,`state2`) VALUES (null,'$phonenumber','$i','$picture_url[$i]','$picture_name[$i]','','2','2')";        
              $resultSet = mysqli_query($conn,$sql);     }}
               ?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值