ave
New member
Прочитал темы:
1. Решено - отправка get запроса на сайт
2. Решено - простая передача данных
И ничего не помогло. Проблема с отправкой данных на свой сайт (хостинг) осталась.
Перепробовал все варианты, ничего не работает. Может, кто знает в чем проблема.
У меня сайт с сертификатом на https. Проверил сертификат - выдает ок.
Сделал для теста простую функцию - изменить одну ячейку в базе, если файл вызывается. И даже файл не вызывается - база не меняется.
1. https://zxlogin.com/zxtt.php?t1=18.62&t2=19.56
2. http://zxlogin.com/zxtt.php?t1=18.62&t2=19.56
Строки из браузера нормально записывают параметры.
Я там уже и GET и POST обработку добавил.
Ну, и сами функции отправки:
На thingspeak.com данные приходят, а на а мой сайт нет. Даже сам файл zxtt.php не вызывается.
1. Решено - отправка get запроса на сайт
2. Решено - простая передача данных
И ничего не помогло. Проблема с отправкой данных на свой сайт (хостинг) осталась.
Перепробовал все варианты, ничего не работает. Может, кто знает в чем проблема.
У меня сайт с сертификатом на https. Проверил сертификат - выдает ок.
Код:
const char *apikey = "********************"; // ключик от thingsspeak.com
const char *host_thingspeak = "api.thingspeak.com";
const char *host_zxlogin = "zxlogin.com";
//const char *host_zxlogin = "www.zxlogin.com";
const char *fingerprint_zxlogin = "d0 e8 a5 b3 ab 76 de 37 30 57 6e 91 cf 4d 81 59 05 2e e3 22"; //zxlogin.com отпечаток сертификата
const int httpsPort = 443;
const int httpPort = 80;
Serial.print("Connecting to: ");
Serial.println(host_zxlogin);
if (client.connect(host_zxlogin,httpsPort)) {
Serial.println("Connected");
if (client.verify(fingerprint_zxlogin,host_zxlogin)) Serial.println("Certificate ok"); else Serial.println("Certificate error");
} else {
Serial.println("Connection failed");
}
Код:
Connecting to: zxlogin.com
Connected
Certificate ok
PHP:
<?
include 'con.php';
mysql_query('UPDATE ttt SET t1=1 WHERE id=1');
mysql_close();
?>
2. http://zxlogin.com/zxtt.php?t1=18.62&t2=19.56
Строки из браузера нормально записывают параметры.
Я там уже и GET и POST обработку добавил.
PHP:
<?
if (isset($_GET['t1']) && isset($_GET['t2'])){
$t1 = (int)$_GET["t1"];
$t2 = (int)$_GET["t2"];
include 'con.php';
mysql_query('UPDATE ttt SET t1='.$t1.', t2='.$t2.' WHERE id=1');
mysql_close();
}
if (isset($_POST['t1']) && isset($_POST['t2'])){
$t1 = (int)$_POST["t1"];
$t2 = (int)$_POST["t2"];
include 'con.php';
mysql_query('UPDATE ttt SET t1='.$t1.', t2='.$t2.' WHERE id=1');
mysql_close();
}
?>
Код:
void sendServer(int state) {
Serial.print("Connecting to ");
Serial.println(host_zxlogin);
WiFiClient client; // Use WiFiClient class to create TCP connections
if (!client.connect(host_zxlogin,httpPort)) {
Serial.println("Connection failed");
return;
}
Serial.println("Connected");
// Создаем URI для запроса
String url = "/zxtt.php?t1="+(String)ft1+"&t2="+(String)ft2;
Serial.print("Sending URL: ");
Serial.print(host_zxlogin);
Serial.println(url);
// отправляем запрос на сервер
client.print(String("GET ")+url+" HTTP/1.1\r\nHost: "+host_zxlogin+"\r\nConnection: close\r\n\r\n");
/*
client.print("GET /zxtt.php?t1=");
client.print(t1);
client.print("&t2=");
client.print(t2);
client.println(" HTTP/1.1");
client.print("Host:");
client.println(host_zxlogin);
client.println("Connection: close");
client.println();
client.println();
*/
client.flush(); // ждем отправки всех данных
client.stop();
Serial.println("Closing connection");
Serial.println();
}
void sendServer2(int state) {
Serial.print("Connecting to ");
Serial.println(host_thingspeak);
WiFiClient client; // Use WiFiClient class to create TCP connections
if (!client.connect(host_thingspeak,httpPort)) {
Serial.println("Connection failed.");
return;
}
Serial.println("Connected.");
// Создаем URI для запроса
String url = "/update?key="+(String)apikey+"&field1="+(String)ft1+"&field2="+(String)ft2+"&field3="+(String)state;
Serial.print("Sending URL: ");
Serial.print(host_thingspeak);
Serial.println(url);
// отправляем запрос на сервер
client.print(String("GET ")+url+" HTTP/1.1\r\nHost: "+host_thingspeak+"\r\nConnection: close\r\n\r\n");
client.flush(); // ждем отправки всех данных
client.stop();
Serial.println("Closing connection");
Serial.println();
}
Последнее редактирование: