记录《用于物联网Arduino 项目开发实用案例解析》第七章 物联网模式:点播客户端的实践过程(没有用ios,采用android)
一、Apache服务器部分
1.安装WampServer3.0,其中apache2.4.17……见下图
本机127.0.0.1,或者192.168.31.154都可以打开。但同一局域网的其他电脑没法打开(浏览器访问报的一直是403 Forbidden,报 You don't have permission to access / ……on this server错误),需要修改apache的配置文件。
(1)apache2.2版本
打开apache配置文件httpd.conf,找到这么一段:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
deny from all
Satisfy all
</Directory>
然后试着把deny from all中的deny改成了allow,保存后重起了apache,然后再一测试我的网页,哈哈!居然问题就出在这,访问测试网站完全正常了。
(2)apache2.4版本
2.4+中是把Order deny,allow Deny from all两项合并为Require all denied的。好那么现在我将Require all denied改为允许状态Require all granted就ok了。
DocumentRoot "c:/wamp64/www/"
<Directory "c:/wamp64/www/">
Options Indexes FollowSymLinks
AllowOverride none
Require all granted
</Directory>
二、Mysql数据库部分
WAMP安装好后,在cmd中输入mysql -h 127.0.0.1 -u root -p 19***2,就可以登录mysql数据库客户端了(root用户的密码我之前改为自己的了,初始默认为空)。show databases;查看当前系统中共有多少个数据库。use dbofcumtzd1020;使用之前建立的一个数据库。
select database();显示当前使用的是那个数据库。然后按教程方法创建parking_spots_data表并插入一条数据。
三、PHP部分(代码都放在C:\wamp64\www\smartparking文件夹中)
1.util_dbconn.php,教程中的连接方法不能用,改用mysqli_connect()函数。
<?php
$severname="127.0.0.1";
$dbname="dbofcumtzd1020";
$username="root";
$password="19***2";
//打开到Mysql服务器的新的连接
//$mysqli=new mysqli($severname,$dbname,$username,$password);
$mysqli=mysqli_connect($severname,$username,$password,$dbname);
if ($mysqli->connect_error) {
die("[ERROR] Connection Failed:".$mysqli->connect_error);
}
?>
2.update.php
<?php
include('util_dbconn.php');
$parkingUpdate=$_GET['parkingUpdate'];
echo "[DEBUG] Parking Update:" .$parkingUpdate. "\n";
$currentParkingCount =1;
if ($parkingUpdate=="OPEN") {
$currentParkingCount=1;
} else {
$currentParkingCount=0;
}
$sql="UPDATE PARKING_SPOTS_DATA SET COUNT =$currentParkingCount";
if (!$result=$mysqli->query($sql)) {
# code...
echo "[error]".mysqli_error()."\n";
exit();
}
$mysqli->close();
echo "[debug] Update Parking Spots Counter Successfully\n";
?>
3.getcount.php(教程中的$result->相关函数及属性不能用)