WebClientData

De ArduWiki
Revisión del 16:03 19 sep 2019 de Kike GL (Discusión | contribuciones) (Referencias externas)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Este ejemplo muestra cómo hacer un envio de datos hacia un servidor Xampp (Apache + MySQL)

Código Arduino

#include <SPI.h>
#include <Ethernet.h>

byte mac[] = {0xDE,0xAD,0xBE,0xEF,0xFE,0xED};
IPAddress server(192,168,0,20);
EthernetClient client;

int pot;

void setup() {
   Serial.begin(9600);
   if (Ethernet.begin(mac) == 0) {
      Serial.println("Fallo la configuracion DHCP");
      //Hacerlo para siempre
      for(;;)
      ;
   }
   delay(1000);
   Serial.println("conectando...");

   if (client.connect(server, 80)) {
      Serial.println("conectado");
      //Requerimiento:
      client.print("GET /arduino/mysql.php?valor=");
      pot = analogRead(A0);
      client.print(pot);
      client.println(" HTTP/1.0″);
      //client.println("GET /arduino/ethernet.php HTTP/1.0");
      client.println();
   } else {
      Serial.println("Fallo la coneccion");
   }
}

void loop(){
   //Si hay un cliente imprime sus datos
   if (client.available()) {
      char c = client.read();
      Serial.print(c);
   }

   //Si el servidor se desconecta, para cliente
   if (!client.connected()) {
      Serial.println();
      Serial.println("desconectando...");
      client.stop();
      //Hacerlo para siempre
      for(;;)
      ;
   }
}

Código PHP

$db = 'tiempos';
$mysqli = new mysqli('localhost', 'Usuario', 'Clave', $db) OR exit('Fallo al conectar a MySQL o BD');
$sql = 'INSERT INTO tabla1 SET val='. $_REQUEST['valor'];
//echo $sql;
$res = $mysqli->query($sql) OR exit('Revisa el query<p>'. $sql);
if ($mysqli->affected_rows != 1){
   echo 'Error...';
}
//Cierra conexión
$mysqli->close();

MySQL

Campos de tabla1
Nombre Tipo Comentario
id int(11) Auto_Incremet
val varchar(4)
fecha datetime Current_timestamp

Vea también


Referencias externas