PHP连接数据库实现插入数据操作

2018-07-31  本文已影响0人  熊sir要早睡早起
<?php
//设置json
   header('Content-type:text/json');
   header('charset=utf-8');
   //设置错误层级,解决参数未传时异常的情况
   error_reporting(E_ALL^E_NOTICE);
   if(isset($_SERVER["HTTP_ORIGIN"])) {//跨域配置
    header('Access-Control-Allow-        Origin:'.$_SERVER["HTTP_ORIGIN"]);  
   }
 //header('Access-Control-Allow-Origin: *');
 //方法
 header('Access-Control-Allow-Methods:OPTIONS,POST,GET');
 header('Access-Control-Allow-Headers:x-requested-with,content-type');
 //缓存时间
 header('Access-Control-Max-Age:86400');
 //跨域Ajax请求时是否带Cookie的设置
 header('Access-Control-Allow-Credentials:true');

//返回json数据中的字段。
$data['code']=0;
$data['msg']='存储失败';

//默认主机(这里数据你自己数据库信息)
define('host','127.0.0.1');
define('user','root');
define('passwd','root');
define('dbName', 'arman');
//连接
$handle = mysqli_connect(host,user,passwd,dbName);

 if(!$handle){//连接失败
  $data['code']=0;
  $data['msg']='连接数据库失败';
  //JSON_UNESCAPED_UNICODE解决中文乱码,并通过json_encode来转换json
  echo json_encode($data,JSON_UNESCAPED_UNICODE);
  return;
}


//接收参数
$uname = $_POST['uname'];
$phone = $_POST['phone'];
$nickname = $_POST['nickname'];
//处理参数中的空格
// $uname_ = htmlspecialchars(stripcslashes(trim($uname)));
// $phone_ = htmlspecialchars(stripcslashes(trim(phone)));
// $nickname_ = htmlspecialchars(stripcslashes(trim(nickname)));
if(!empty($uname)&&!empty($phone)&&!empty($nickname)){
   //存储过程
  $insert = "CALL save('$uname','$phone','$nickname');";
  //执行存储过程
  $do = mysqli_query($handle,$insert);
  //取存储过程返回的结果
    $result = mysqli_fetch_assoc($do);
   //释放资源
    mysqli_free_result($do);
    //关闭连接
    mysqli_close($handle);
  if($result['code']>0){
       $data['code']=1;
       $data['msg']='投票成功';
  }else{
       $data['code']=0;
       $data['msg']='投票失败';
  }
  echo json_encode($data,JSON_UNESCAPED_UNICODE);
}else{

    $data['code']=0;
    $data['msg']='参数错误';
    echo json_encode($data,JSON_UNESCAPED_UNICODE);
}


?>

存储过程非常简单,登入的话自己实现一下。

BEGIN
    INSERT INTO `armani` (uname,phone,nickname)     VALUES(_uname,_phone,_nickname);
    SELECT ROW_COUNT() as 'code';
END
上一篇下一篇

猜你喜欢

热点阅读