Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Receive Input Tag from Htl & update Value

Status
Not open for further replies.

ajit_nayak87

Member level 5
Joined
Oct 30, 2017
Messages
86
Helped
1
Reputation
2
Reaction score
1
Trophy points
8
Activity points
981
I am using NodeMCU for coding for purpose. I am trying to get input from web browser & update the Input value.

I am using DHT11 sensor here. i could able to display temp & humidity. Now i want to set unique temp It should get updated in set value


Code C++ - [expand]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
#include <ESP8266WiFi.h>
#include "DHT.h"
 
static float Set_Temp=30.0;
DHT dht;
 
const char* ssid = "esp8266";
const char* password = "Test123456";
 
int ledPin = 13; // GPIO13
WiFiServer server(80);
 
void setup() {
  Serial.begin(115200);
  delay(10);
 
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, LOW);
  dht.setup(D3);   /* D1 is used for data communication */
  // Connect to WiFi network
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
 
  WiFi.begin(ssid, password);
 
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
 
  // Start the server
  server.begin();
  Serial.println("Server started");
 
  // Print the IP address
  Serial.print("Use this URL to connect: ");
  Serial.print("http://");
  Serial.print(WiFi.localIP());
  Serial.println("/");
 
}
 
void loop() {
  // Check if a client has connected
  WiFiClient client = server.available();
  if (!client) {
    return;
  }
 
  // Wait until the client sends some data
  Serial.println("new client");
  while(!client.available()){
    delay(1);
  }
 
 
// New code has been added
 
 delay(dht.getMinimumSamplingPeriod());  /* Delay of amount equal to sampling period */
 
  float humidity = dht.getHumidity(); /* Get humidity value */
  float temperature = dht.getTemperature(); /* Get temperature value */
 
 // Serial.print(dht.getStatusString());  /* Print status of communication */
 
 
 
  // Read the first line of the request
  String request = client.readStringUntil('\r');
  Serial.println(request);
  client.flush();
 
  // Match the request
 
  int value = LOW;
  if (request.indexOf("/LED=ON") != -1)  {
    digitalWrite(ledPin, HIGH);
    value = HIGH;
  }
  if (request.indexOf("/LED=OFF") != -1)  {
    digitalWrite(ledPin, LOW);
    value = LOW;
  }
 
// Set ledPin according to the request
//digitalWrite(ledPin, value);
 
  // Return the response
  client.println("HTTP/1.1 200 OK");
  client.println("Content-Type: text/html");
  client.println(""); //  do not forget this one
  client.println("<!DOCTYPE HTML>");
  client.println("<html>");
 
  client.print("Led pin is now: ");
 
  if(value == HIGH) {
    client.print("On");
  } else {
    client.print("Off");
  }
  client.println("");
  client.println("<a href="/LED=ON""><button>Turn On </button></a>");
  client.println("<a href="/LED=OFF""><button>Turn Off </button></a>"); 
  client.println("</html>");
client.print("</html>");
client.print("<head>");
client.print("<title>My Page</title>");
client.print("</head>");
client.print("<body>");
  client.print("");
   client.print("Set_Temp: ");
    client.println("<input type=text name=textbox size=25 value=Enter Temp Here");
    client.println("<input type=submit value=Send me your name!>");
    client.println("</div>");
     client.println("</body>");
     client.println("</html>");
  client.println("DHT11_HumidityReading: ");
  client.println(humidity,1);
   client.println("");
  client.println("DHT11_Temprature Reading: ");
  client.println(temperature,1);
   client.println("");
 
  client.println("Set_Temp: ");
  client.println(Set_Temp);
   client.println("");
 
  delay(1);
  Serial.println("Client disonnected");
  Serial.println("");
 
}




Set_temp.jpg


This part create text box and set to take input from externally. Now these has to take input & store it in Set_Temp how can i store it.


Code C++ - [expand]
1
2
3
4
5
6
7
8
9
10
11
12
client.print("</html>");
client.print("<head>");
client.print("<title>My Page</title>");
client.print("</head>");
client.print("<body>");
  client.print("");
   client.print("Set_Temp: ");
    client.println("<input type=text name=textbox size=25 value=Enter Temp Here");
    client.println("<input type=submit value=Send me your name!>");
    client.println("</div>");
     client.println("</body>");
     client.println("</html>");

 

Didn't you try just doing this ?
Code:
  server.send(200, "text/html", Set_Temp);

Anyway, since you want to use the Set_Temp as an HTML variable, the line 8 of yor 2nd code seems wrong, I would expect something like this...

Code C++ - [expand]
1
client.println("<input type=text name=Set_Temp size=25 value=Enter Temp Here");

...instead of this:

Code C++ - [expand]
1
client.println("<input type=text name=textbox size=25 value=Enter Temp Here");

 

Html form is given like this to get and displayed.



Code HTML - [expand]
1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE HTML>
<html>  
<body>
 
<form action="welcome_get.php" method="get">
Name: <input type="text" name="name">
E-mail: <input type="text" name="email">
<input type="submit">
</form>
 
</body>
</html>






I have tried this methods



Code HTML - [expand]
1
2
3
Set_Temp:"<input type=submit value=Change >";
    //Set_Temp:"<input type=text name=textbox size=5 value=Enter_Temp_Here>";
    Serial.println(Set_Temp);



How value to get store in Set_temp Example shown in HTML work well on tutorial not in arduino



Code HTML - [expand]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
client.print("</html>");
client.print("<head>");
client.print("<title>My Page</title>");
client.print("</head>");
client.print("<body>");
  client.print("");
   client.print("Set_Temp: ");
    "<form action="" method=get>";
    client.println("<input type=text name=textbox size=5 value=28.0>");
    client.println("<input type=submit value=Change >");
 
    Set_Temp=readString.indexOf(2);
    Set_Temp:"<input type=submit value=Change >";
    //Set_Temp:"<input type=text name=textbox size=5 value=Enter_Temp_Here>";
    Serial.println(Set_Temp);




Few people used like this.




Code HTML - [expand]
1
2
3
4
5
6
7
client.println("<H1>HTML form GET example</H1>");
 
          client.println("<FORM ACTION='/' method=get >"); //uses IP/port of web page
 
          client.println("Pin 5 'on' or 'off': <INPUT TYPE=TEXT NAME='LED' VALUE='' SIZE='25' MAXLENGTH='50'><BR>");
 
          client.println("<INPUT TYPE=SUBMIT NAME='submit' VALUE='Change Pin 5!'>");

 
Last edited by a moderator:

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top