以下是用PHP访问数据库的代码

 1 <?php
 2
 3 class itcastUsers {
 4         private $db;
 5
 6         // 构造函数-建立数据库链接
 7         function __construct() {
 8                 $this->db = new mysqli('127.0.0.1', 'root', '123456', 'itcast');
 9
10                 if (mysqli_connect_errno()){
11                         printf("连接错误:%s\n", mysqli_connect_error());
12                         exit();
13                 }
14
15                 $this->db->autocommit(FALSE);
16         }
17
18         // 析构函数-关闭数据库连接
19         function __destruct() {
20                 $this->db->close();
21         }
22
23         // 用户登录
24         function userLogin() {
25                 if (isset($_GET['username']) && isset($_GET['password'])){
26                         // 获取GET请求参数
27                         $accessType = '[GET]';
28                         $userName = $_GET['username'];
29                         $userPassword = $_GET['password'];
30                 } else if (isset($_POST['username']) && isset($_POST['password'])){
31                         // 获取POST请求参数
32                         $accessType = '[POST]';
33                         $userName = $_POST['username'];
34                         $userPassword = $_POST['password'];
35                 } else {
36                         echo('非法请求!');
37                         return false;
38                 }
39
40                 // 设置数据库查询字符编码
41                 $this->db->query('set names utf8');
42                 // 查询请求
43                 $data = $this->db->query("SELECT id, userName, userImage, FROM userInfo WHERE userName='$userName' AND userPwd='$userPassword'");
44                 // 绑定查询参数
45                 $this->db->real_escape_string($userName);
46                 $this->db->real_escape_string($userPassword);
47                 // 提交查询请求
48                 $this->db->commit();
49                 // 提取一条查询结果
50                 $row = $data->fetch_assoc();
51                 // 将结果绑定到数据字典
52                 $result = [
53                         'userId' => $row['id'],
54                         'userName' => $row['userName'],
55                         'userImage' => $row['userImage']
56                         ];
57                 // 将数据字典使用JSON编码
58                 echo json_encode($result);
59                 return true;
60         }
61 }
62
63 header('Content-Type:text/html;charset=utf-8');
64 $itcast = new itcastUsers;
65 $itcast->userLogin();
66
67 ?>

通过Get访问数据库的代码:

 1 -(void)getLogin{
 2     NSString *urlStr =[NSString stringWithFormat:@"http://localhost/login.php?username=%@&password=%@",self.userName.text,self.userPassword.text];
 3
 4     NSURL *url = [NSURL URLWithString:urlStr];
 5
 6     NSURLRequest *request = [NSURLRequest requestWithURL:url];
 7
 8     [NSURLConnection sendAsynchronousRequest:request queue:[[NSOperationQueue alloc]init] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
 9
10         NSString *str = @"misaka";
11         str = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
12         [[NSThread currentThread] setName:@"HHHH"];
13         NSLog(@"-----%@ ~~~~~~~~ %@--------",str,[NSThread currentThread]);
14     }];
15     NSLog(@"come here %@",[NSThread currentThread]);
16 }

通过Post访问数据库的代码:

 1 - (void)postLogin{
 2     // 1.url
 3     NSString *urlStr = [NSString stringWithFormat:@"http://127.0.0.1/login.php"];
 4     NSURL *url = [NSURL URLWithString:urlStr];
 5     // 2.request
 6     NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
 7     request.HTTPMethod = @"POST";
 8     NSString *str = [NSString stringWithFormat:@"username=%@&password=%@", self.userName.text, self.userPassword.text];
 9     request.HTTPBody = [str dataUsingEncoding:NSUTF8StringEncoding];
10     // 3.connection(网络请求统一使用异步方式)
11     [NSURLConnection sendAsynchronousRequest:request queue:[[NSOperationQueue alloc] init] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
12
13         if (connectionError == nil) {
14             // 网络请求结束以后
15             // 将data转字符串
16             NSString *str = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
17             NSLog(@"str:%@,%@", data, [NSThread currentThread]);     // num:2 or 3
18
19             // 更新ui(统一在主线程)
20             [[NSOperationQueue mainQueue] addOperationWithBlock:^{
21                 NSLog(@"更新ui %@", [NSThread currentThread]);                                 // num:1
22                 self.resultLable.text = @"POST";
23             }];
24         } else {
25             NSLog(@"%@", connectionError.localizedDescription);
26         }
27
28     }];
29
30     NSLog(@"come here! %@", [NSThread currentThread]);    // num:1
31 }

转载于:https://www.cnblogs.com/hina/p/4364607.html

PHP搭建服务器的代码相关推荐

  1. 显示纯服务器_BBT三行代码搭建服务器,让Dynamo跳出IronPython的封锁

    版本繁多的 Python Python 有基于不同的实现方式,有多个版本,比如 CPython. Jython. RPython 与 IronPython 等等. 不过,一般我们口中所说的 Pytho ...

  2. clone远程代码 在不同电脑上git_用树莓派3搭建私有git代码仓库

    0.出发点 由于项目开发的规模和复杂度越来越大,有时候需要同时多人在不同的嵌入式linux上开发代码,在没有用git管理代码和文档前,很难同步代码和文档的版本,宝贵的代码存储也没有安全感. githu ...

  3. android处理服务器的集合,android集合SSH搭建服务器客户端请求

    android集合SSH搭建服务器客户端请求 (2012-06-14 06:21:53) 标签: android 服务器 杂谈 android集合SSH搭建服务器客户端请求小弟以前是学的J2EE,由于 ...

  4. git clone 添加代理_用树莓派3搭建私有git代码仓库

    0.出发点 由于项目开发的规模和复杂度越来越大,有时候需要同时多人在不同的嵌入式linux上开发代码,在没有用git管理代码和文档前,很难同步代码和文档的版本,宝贵的代码存储也没有安全感. githu ...

  5. 怎么搭建服务器集成环境配置文件,怎么搭建服务器集成环境配置文件

    怎么搭建服务器集成环境配置文件 内容精选 换一换 编译机所使用的硬件环境如表1所示:编译机所使用到的软件环境版本如下表2 编译机环境软件推荐配置所示:在profile文件中添加JDK的PATH.在/e ...

  6. git钩子放服务器_Git代码自动化部署、Hook、钩子

    简介 本地git 的上推到服务器后,会触发 hooks/post-update 脚本,通过简单的修改即可完成Git 代码的自动化部署. Git 服务搭建可以参考 https://www.jianshu ...

  7. ubuntu下git搭建服务器(gitosis)

    ubuntu下git搭建服务器(gitosis) - 简书 var _hmt = _hmt || []; (function() { var hm = document.createElement(& ...

  8. Python实现在远端服务器挂代码—发送定时天气预报至邮箱+每日一句(小白教程)

    Python实现在远端服务器挂代码-发送定时天气预报至邮箱+每日一句(小白教程) 人生苦短,我用python.下面来讲解一个python每天定时发送天气预报和每日一句至指定邮箱的脚本挂在服务器运行的程 ...

  9. python怎么把程序挂在远端服务器_Python实现在远端服务器挂代码—发送定时天气预报至邮箱+每日一句(小白教程)...

    Python实现在远端服务器挂代码-发送定时天气预报至邮箱+每日一句(小白教程) 人生苦短,我用python.下面来讲解一个python每天定时发送天气预报和每日一句至指定邮箱的脚本挂在服务器运行的程 ...

最新文章

  1. IEEE技术领域大奖公布:ML先驱上榜,大陆唯一获奖学者来自清华
  2. ubuntu检查端口是否开启_Ubuntu默认防火墙安装、启用、配置、端口、查看状态相关信息...
  3. 【JVM性能调优】使用jstack找出最耗CPU的java线程
  4. Oracle Study之案例--数据恢复神器Flashback(2)
  5. 2021年,推荐这几个优质公众号碎片化学习
  6. 自动完成下拉框 Select2 关键字搜索的实例(本地数据与异步获取)
  7. vr的延迟和渲染效率优化与Nvidia VRWorks
  8. 作为“梅西式”程序员,我要跳槽了
  9. Writing an ALSA Driver(二)
  10. 17.2 无监督数据增强——UDA
  11. 【SDOI2014】数表
  12. 【译】2018 年前端开发回顾
  13. Java多线程讲解,超详细!可获取相关笔记
  14. 2021-06-28
  15. 当下最实用计算机编程语言,目前最流行的计算机编程语言是什么?
  16. oracle sql列转行_Oracle行转列、列转行的Sql语句总结(转)
  17. html表格中加背景,css表格怎么添加背景颜色?
  18. 超详细wordPress主题制作教程
  19. import clip时Cannot re-initialize CUDA in forked subprocess
  20. OSChina 周三乱弹 —— who's your 大爷

热门文章

  1. 三国也风流服务器怎么不稳定呢,三国也风流手游
  2. linux目录文件变化,Linux下监测目录或文件的变化---inotify
  3. java心形代码_使用java打印心型、圆形图案的实现代码_java
  4. relu函数_ECCV 2020,在视觉任务上大幅超越ReLU的新型激活函数
  5. php.ini 忽略警告,配置php.ini去掉警告信息
  6. solve stiffness matrix in matlab
  7. 数值分析书籍以及Intel性能分析工具
  8. 朴素贝叶斯算法+模型的评价-查准率、召回率、F1-score及混淆矩阵(code实现)
  9. VGG使用重复元素的网络
  10. 高光谱地物识别练习-从ENVI标准波普库中选择端元进行物质识别