首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过esp8266 wifi模块将数据从arduino uno发送到网页?

如何通过esp8266 wifi模块将数据从arduino uno发送到网页?
EN

Stack Overflow用户
提问于 2016-05-03 12:05:03
回答 1查看 2.1K关注 0票数 0

我正在设计一个带有arduino uno,and 8266-01 wifi模块和rfid阅读器的rfid考勤系统。任务是读取rfid卡并将其唯一的标识号发送到网页(用php编码),该网页将数据存储在数据库中。我们通过一个uno板从arduino ide串行监视器发送命令到模块。我们首先使用操作http POST方法将读取的rfid号码发送到网页。因为那次尝试失败了,所以我们尝试了使用GET方法。但这两种方法都没有用。

代码语言:javascript
复制
    <?php
    error_reporting(E_ALL ^ E_DEPRECATED);
    $dbhost = 'localhost';
    $dbuser = 'root';
    $dbpass = '';
    $conn = mysql_connect($dbhost, $dbuser, $dbpass);
    if(! $conn ) {
    die('Could not connect: ' . mysql_error());
    }
    $Data=$_GET['Data'];
    //$Data='Data test';
    echo "Data is :" . $Data;
    $sql = "INSERT INTO test_tab (Data) VALUES ('$Data')";
    mysql_select_db('robot');
    $retval = mysql_query( $sql, $conn );
    if(! $retval ) {
    die('Could not enter data: ' . mysql_error());
    }   
    echo "Entered data successfully\n";
    mysql_close($conn);
    ?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-03 14:27:57

您缺少了几个\r\n,并且您给AT+CIPSEND的长度是不正确的。

试着发送以下内容:

代码语言:javascript
复制
AT+CIPSEND=43\r\n
GET /test.php?Data=2\r\nHost:192.168.1.13\r\n\r\n

发送\r\n只需点击Enter。确保在您的串行监视器中选择了"Both NL & CR"。最后,是的,你打了两次Enter

这里我发送值2。

这里我是如何得到43长度的:你取你的get的大小(我们有49),然后对每一个\r\n减去1。因为他们只是一个角色。所以我们有49 - 6 = 43了。

请确保尝试直接从URL发送一个值,以验证PHP脚本是否正常工作。在尝试通过ESP8266发送数据之前修复任何可能的错误。

侧注:不建议使用API,因为它被弃用并从php的新版本中删除。见(http://php.net/manual/en/mysqlinfo.api.choosing.php)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37003667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档