微信小程序之后端处理

首先,来看一下后端的关系图:

这边主要介绍PHP的一些基础语法等等,关于将php代码部署到SAE新浪云,大家可以参考这个链接:https://www.cnblogs.com/dhx96/p/6561730.html

PHP的代码主要分成这样几个部分:

  (1)数据库连接

  (2)sql语句,增删改查等

  (3)逻辑判断,处理要返回的数据等

1、数据库连接

<?php
    $link = mysqli_connect('localhost', 'root', 'root', 'express');  //对应地址,用户名,密码,数据库名称
    mysqli_set_charset($link, 'utf8');
?>

2、sql语句,增删改查

  输出方式分为两种:echo 和 var_dump (会多返回数据类型)

<?php
    $sql = 'select * from orders';
    $res = mysqli_query($link, $sql); //返回一个结果集对象
    $arr = mysqli_fetch_all($res, MYSQLI_ASSOC);    //解析结果内容
    
    /*可以打印出结果集等,确保获取到数据库内容,返回json格式字符串
       echo json_encode($res);
        echo json_encode($arr);
    */

    //遍历数组
    foreach($arr as $val){
        echo '<pre>';

        var_dump($val);
        var_dump($val['Sname']);
        var_dump($val['Pwd']);

        echo '</pre>';
    }
?>    

3、逻辑判断,处理要返回的数据等,以下简要列举了查询和更新操作的展示。

<?php    

    $sendSno = $_POST['sendSno'];    //post方式传递来的参数
    
//查询数据并遍历返回给前端
    $sql = " select Ono,Status,Phone from orders where sendSno = '$sendSno' ";
    $res = mysqli_query($link,$sql);
    $arr = mysqli_fetch_all($res, MYSQLI_ASSOC);
    
    if(mysqli_affected_rows($link)){    
        $result = array('error_code'=>0,'msg' => '发单数据获取成功'); 
        foreach ($arr as $key => $value){    
            $result["data"][$key] = $value;
        }    
    }else{
        $result = array('error_code'=>2,'msg'=>'没有发单记录');
    }
    echo json_encode($result);

//更新数据    
    if (mysqli_num_rows($res)) {    //函数返回结果集中行的数量,参数:由 mysqli_query()、mysqli_store_result() 或 mysqli_use_result() 返回的结果集标识符
        $sql = " update orders set Status = '已完成' where sendSno='$sendSno' ";
        $res = mysqli_query($link, $sql);
        if(mysqli_affected_rows($link)){    //函数返回前一次 MySQL 操作(SELECT、INSERT、UPDATE、REPLACE、DELETE)所影响的记录行数,参数:使用的 MySQL 连接
            $result = array('code'=>0,'msg'=>'数据更新成功');
            echo json_encode($result);
        }else{
            $result = array('code'=>2,'msg'=>'数据更新失败(因为发单人没有先确认完成)');
            echo json_encode($result);
        }
    }

?>
原文地址:https://www.cnblogs.com/zx0423/p/13162094.html