{"id":1057,"date":"2022-04-20T21:10:00","date_gmt":"2022-04-20T13:10:00","guid":{"rendered":"http:\/\/hower.forwebs.net\/robot\/?p=1057"},"modified":"2022-04-25T11:39:11","modified_gmt":"2022-04-25T03:39:11","slug":"%e4%b8%8b%e6%9c%9f%e7%ac%ac9%e5%a0%82-%e7%89%a9%e8%81%af%e7%b6%b2iot%e8%b3%87%e6%96%99%e5%ba%ab","status":"publish","type":"post","link":"https:\/\/hower.forwebs.net\/robot\/archives\/1057","title":{"rendered":"\u4e0b\u671f\u7b2c8\u5802[\u81ea\u52d5\u6284\u9304\u6a5f\u5668\u4eba] IOT+\u50b3\u611f+\u8cc7\u6599\u5eab"},"content":{"rendered":"\n<p>\u4eca\u5929\u8981\u628a\u7269\u806f\u7db2\u8490\u96c6\u5230\u7684\u6578\u64da\uff0c\u50b3\u9001\u5230\u8cc7\u6599\u5eab\u4e0a\uff0c\u505a\u5230\u81ea\u52d5\u6d77\u91cf\u7d00\u9304\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><a href=\"http:\/\/hower.forwebs.net\/robot\/archives\/1080\" target=\"_blank\" rel=\"noreferrer noopener\">\u5efa\u7f6e\u4e3b\u677f<\/a><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u6e2c\u8a66Blink\u6210\u529f\u5f8c &#8230;<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u4f7f\u7528DHT11\uff0c\u8a18\u9304\u6eab\u6fd5\u5ea6<\/p>\n\n\n\n<p>\u63a5\u7dda:<br>GND&#8212; G<br>VCC&#8212; 3V<br>S      &#8212; D1<\/p>\n\n\n\n<p class=\"has-pale-pink-background-color has-background\">\u6ce8\u610f : D1\u4e0d\u662f\u7b2c1\u8173<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"768\" src=\"http:\/\/hower.forwebs.net\/robot\/wp-content\/uploads\/sites\/2\/2022\/04\/IMG_20220424_225240-1024x768.jpg\" alt=\"\" class=\"wp-image-1089\" srcset=\"https:\/\/hower.forwebs.net\/robot\/wp-content\/uploads\/sites\/2\/2022\/04\/IMG_20220424_225240-1024x768.jpg 1024w, https:\/\/hower.forwebs.net\/robot\/wp-content\/uploads\/sites\/2\/2022\/04\/IMG_20220424_225240-300x225.jpg 300w, https:\/\/hower.forwebs.net\/robot\/wp-content\/uploads\/sites\/2\/2022\/04\/IMG_20220424_225240-768x576.jpg 768w, https:\/\/hower.forwebs.net\/robot\/wp-content\/uploads\/sites\/2\/2022\/04\/IMG_20220424_225240-1536x1152.jpg 1536w, https:\/\/hower.forwebs.net\/robot\/wp-content\/uploads\/sites\/2\/2022\/04\/IMG_20220424_225240-2048x1536.jpg 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<pre class=\"wp-block-code\"><code>#include \"DHT.h\"\nDHT dht_pin5(5, DHT11); \/\/ Initialize DHT sensor\n\nvoid setup() {\n  Serial.begin(115200);\/\/\u8a2d\u5b9a\u9b91\u7387\n  dht_pin5.begin();\/\/\u555f\u52d5DHT\n}\n\nvoid loop() {\n  float h = dht_pin5.readHumidity();\/\/\u8b80\u53d6\u6fd5\u5ea6\n  float t = dht_pin5.readTemperature();\/\/\u8b80\u53d6\u651d\u6c0f\u6eab\u5ea6\n\n  Serial.print(\"\u6fd5\u5ea6: \");\n  Serial.print(h);\n  Serial.print(\"\\t\");    \/\/\u7a7a\u5927\u683c\n  Serial.print(\"\u651d\u6c0f: \");\n  Serial.print(t);\n  Serial.print(\"\\n\");   \/\/\u63db\u884c\n  delay(1000);\n}<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u78ba\u8a8d\u5e8f\u5217\u57e0\u76e3\u63a7\u8996\u7a97\u6578\u503c<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>GET\u6e2c\u8a66<\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" href=\"http:\/\/howd.ddns.net\/\" target=\"_blank\">http:\/\/howd.ddns.net\/<\/a><\/p>\n\n\n\n<p>\u5148\u8a66\u8a66 friend<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u662f\u5f88\u597d\u73a9\uff0c\u4f46&#8230;\u8cc7\u6599\u5f88\u591a\u600e\u9ebc\u534a? \u53ef\u4ee5\u653e\u5e7e\u7b46?<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u518d\u6e2c\u8a66 temperature<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u4f3a\u670d\u5668\u7aef VS \u5ba2\u6236\u7aef \u4ecb\u7d39<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u4eca\u5929\u662f\u8981\u8b93ESP8266\u4e3b\u677f\u7576\u6210 &#8212; \u5ba2\u6236\u7aefclient<br>\u6ce8\u610f\u4e0b\u9762\u51fa\u73fe client \u7684\u5730\u65b9<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\n#include \"DHT.h\"\n#include &lt;ESP8266WiFi.h&gt;\n\/\/--------------------------------------------------------------\nconst char* ssid = \"TCGS-Student\";\nconst char* password = \"\";\n\nWiFiClient client;\n \nString serverURL = \"howd.ddns.net\";\nString url = \"\";\n\/\/--------------------------------------------------------------\nDHT dht_pin5(5, DHT11); \/\/ Initialize DHT sensor\n\n\n\n\n\n\n\/\/==================================================\nvoid setup() {\n  Serial.begin(115200);\/\/\u8a2d\u5b9a\u9b91\u7387\n  dht_pin5.begin();\/\/\u555f\u52d5DHT\n\/\/--------------------------------------------\n  WiFi.mode(WIFI_STA);\n  WiFi.begin(ssid, password);\n  while (WiFi.status() != WL_CONNECTED) {\n    delay(500);\n    Serial.println(\".\");\n  }\n}\n\/\/==================================================\n\n\n\n\n\n\n\nvoid loop() {\n  float h = dht_pin5.readHumidity();\/\/\u8b80\u53d6\u6fd5\u5ea6\n  float t = dht_pin5.readTemperature();\/\/\u8b80\u53d6\u651d\u6c0f\u6eab\u5ea6\n\n  Serial.print(\"\u6fd5\u5ea6: \");\n  Serial.print(h);\n  Serial.print(\"\\t\");    \/\/\u7a7a\u5927\u683c\n  Serial.print(\"\u651d\u6c0f: \");\n  Serial.print(t);\n  Serial.print(\"\\n\");   \/\/\u63db\u884c\n  delay(5000);\n\/\/--------------------------------------------------------------\n    url = \"\/temperature\/insert.php?t=\" +  String(t) + \"&amp;h=\" +  String(h);\n \n  if (client.connect(serverURL, 80)) {\n    client.println(\"GET \" + url + \" HTTP\/1.1\");\n    client.println(\"Host: \" + serverURL);\n    client.println(\"Connection: close\");\n    client.println();\n    client.stop();\n  }\n}<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u5c0f\u6311\u6230<\/p>\n\n\n\n<p>\u61c9\u8a72\u53ef\u4ee5\u770b\u5230\u81ea\u52d5\u4e0a\u50b3\u6eab\u5ea6+\u6fd5\u5ea6\u4e86\uff0c\u52a0\u4e0a&#8221;\u5b78\u865f&#8221;\u5427<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\r\n\/\/ \u5217\u51fa\u8cc7\u6599\r\nrequire_once 'db.php';\r\n\r\n\r\n\r\n\/\/ \u8a2d\u7f6e\u4e00\u500b\u7a7a\u9663\u5217\u4f86\u653e\u8cc7\u6599\r\n$datas = array();\r\n\/\/ sql\u8a9e\u6cd5\u5b58\u5728\u8b8a\u6578\u4e2d\r\n$sql = \"SELECT `id`, `t` , `h`,`no`,`time` FROM `temperature` AS userData WHERE `no`=20903 \";\r\n\r\n\/\/ \u7528mysqli_query\u65b9\u6cd5\u57f7\u884c(sql\u8a9e\u6cd5)\u5c07\u7d50\u679c\u5b58\u5728\u8b8a\u6578\u4e2d\r\n$result = mysqli_query($link,$sql);\r\n\r\n\r\n\r\n\/\/ \u5982\u679c\u6709\u8cc7\u6599\r\nif ($result) {\r\n    \/\/ mysqli_num_rows\u65b9\u6cd5\u53ef\u4ee5\u56de\u50b3\u6211\u5011\u7d50\u679c\u7e3d\u5171\u6709\u5e7e\u7b46\u8cc7\u6599\r\n    if (mysqli_num_rows($result)>0) {\r\n        \/\/ \u53d6\u5f97\u5927\u65bc0\u4ee3\u8868\u6709\u8cc7\u6599\r\n        \/\/ while\u8ff4\u5708\u6703\u6839\u64da\u8cc7\u6599\u6578\u91cf\uff0c\u6c7a\u5b9a\u8dd1\u7684\u6b21\u6578\r\n        \/\/ mysqli_fetch_assoc\u65b9\u6cd5\u53ef\u53d6\u5f97\u4e00\u7b46\u503c\r\n        while ($row = mysqli_fetch_assoc($result)) {\r\n            \/\/ \u6bcf\u8dd1\u4e00\u6b21\u8ff4\u5708\u5c31\u6293\u4e00\u7b46\u503c\uff0c\u6700\u5f8c\u653e\u9032data\u9663\u5217\u4e2d\r\n            $datas&#91;] = $row;\r\n        }\r\n    }\r\n    \/\/ \u91cb\u653e\u8cc7\u6599\u5eab\u67e5\u5230\u7684\u8a18\u61b6\u9ad4\r\n    mysqli_free_result($result);\r\n}\r\nelse {\r\n    echo \"{$sql} \u8a9e\u6cd5\u57f7\u884c\u5931\u6557\uff0c\u932f\u8aa4\u8a0a\u606f: \" . mysqli_error($link);\r\n}\r\n\/\/ \u8655\u7406\u5b8c\u5f8c\u5370\u51fa\u8cc7\u6599\r\nif(!empty($result)){\r\n    \/\/ \u5982\u679c\u7d50\u679c\u4e0d\u70ba\u7a7a\uff0c\u5c31\u5229\u7528print_r\u65b9\u6cd5\u5370\u51fa\u8cc7\u6599\r\n    \/\/print_r($datas);\r\n}\r\nelse {\r\n    \/\/ \u70ba\u7a7a\u8868\u793a\u6c92\u8cc7\u6599\r\n    echo \"\u67e5\u7121\u8cc7\u6599\";\r\n}\r\n?>\r\n\r\n\r\n\r\n\r\n\r\n\r\n&lt;div>\r\n&lt;?php if(!empty($datas)): ?>\r\n&lt;ul>\r\n&lt;!-- \u8cc7\u6599 as key(\u4e0b\u6a19) => row(\u8cc7\u6599\u7684row) -->\r\n&lt;?php foreach ($datas as $key => $row) :?>\r\n&lt;li>\r\n\u7b2c&lt;?php echo($key +1 ); ?> \u7b46\u8cc7\u6599ID: &lt;?php echo $row&#91;'id']; ?>   \u6fd5\u5ea6:&lt;?php echo $row&#91;'h']; ?>  \u6eab\u5ea6:&lt;?php echo $row&#91;'t']; ?>  \u5b78\u865f:&lt;?php echo $row&#91;'no']; ?>  \u6642\u9593:&lt;?php echo $row&#91;'time']; ?>\r\n&lt;\/li>\r\n&lt;?php endforeach; ?>\r\n&lt;\/ul>\r\n&lt;?php else:  ?>\r\n\u67e5\u7121\u8cc7\u6599\r\n&lt;?php endif; ?>\r\n&lt;\/div>\r\n&lt;!-- \u4ee3\u8868\u7d50\u675f\u9023\u7dda -->\r\n&lt;?php mysqli_close($link); ?><\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u4f3a\u670d\u7aef\u4ecb\u7d39\uff0c\u9060\u7aef\u5c31\u662f\u4f7f\u7528\u540c\u5b78\u5b78\u904e\u7684XAMPP\u5efa\u7f6e\uff0c<br>\u4f7f\u7528PHP\u8a9e\u8a00<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>PHP vs HTML<\/p>\n\n\n\n<p>\u6aa2\u8996\u539f\u59cb\u78bc<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u53ef\u4ee5SQL\u5728\u9060\u7aef\uff0c\u6211\u5728\u8fd1\u7aef\u5b58\u53d6\u55ce?<\/p>\n\n\n\n<p>\u5728\u4f60\u7684\u96fb\u8166\u5b58\u53d6\u9060\u7aef\u8cc7\u6599\u5eab<br>\u5b89\u88ddXAMPP<br>\u53ea\u6253\u958b APACHE<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n","protected":false},"excerpt":{"rendered":"<p>\u4eca\u5929\u8981\u628a\u7269\u806f\u7db2\u8490\u96c6\u5230\u7684\u6578\u64da\uff0c\u50b3\u9001\u5230\u8cc7\u6599\u5eab\u4e0a\uff0c\u505a\u5230\u81ea\u52d5\u6d77\u91cf\u7d00\u9304\u3002 \u5efa\u7f6e&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":1071,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[2],"tags":[],"_links":{"self":[{"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/posts\/1057"}],"collection":[{"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/comments?post=1057"}],"version-history":[{"count":38,"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/posts\/1057\/revisions"}],"predecessor-version":[{"id":1129,"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/posts\/1057\/revisions\/1129"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/media\/1071"}],"wp:attachment":[{"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/media?parent=1057"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/categories?post=1057"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hower.forwebs.net\/robot\/wp-json\/wp\/v2\/tags?post=1057"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}