Nueva pregunta

Pregunta:

Fecha: 27-09-2016 12:28:11 (En Español)

Capturar y guardar parámetros GET en MySQL[Resuelta]

Hola, soy nueva en el foro y una recontra oxidada en programacion....
Quisiera saber si alguien podria ayudarme.... el tema es asi... un microcontrolador me envia varios datos por http y yo los tengo que levantar con php para insertarlos en una base de datos... pero la verdad es que me parece que lo estoy haciendo bien mal.... envio lo que arme y espero un poquin de paciencia... desde ya gracias!!

los parámetros se los paso manual asi
http://192.168.1.10/estacion/captura.php?WindDirection=1?WindSpeedAverage=2?WindSpeedMax=3?Temperature=4?RainfallOneHour=5?RainfallOneDay=6?BarPressure=7?Humidity=8


el error es "Undefined index:".....de todas las variables...

 
<?php
    $enlace = mysqli_connect("127.0.0.1","root","", "sensores");

if (!$enlace) {
    echo "Error: No se pudo conectar a MySQL." . PHP_EOL;
    echo "errno de depuración: " . mysqli_connect_errno() . PHP_EOL;
    echo "error de depuración: " . mysqli_connect_error() . PHP_EOL;
    exit;
}

echo "Éxito: Se realizó una conexión apropiada a MySQL! " . PHP_EOL;
echo "Información del host: " . mysqli_get_host_info($enlace) . PHP_EOL;
    // Leemos los valores que nos llegan por GET
    $WindDirection = mysqli_real_escape_string($enlace, $_GET['WindDirection']);
	$WindSpeedAverage = mysqli_real_escape_string($enlace, $_GET['WindSpeedAverage']);
	$WindSpeedMax = mysqli_real_escape_string($enlace, $_GET['WindSpeedMax']);
	$Temperature = mysqli_real_escape_string($enlace, $_GET['Temperature']);
	$RainfallOneHour = mysqli_real_escape_string($enlace, $_GET['RainfallOneHour']);
	$RainfallOneDay = mysqli_real_escape_string($enlace, $_GET['RainfallOneDay']);
	$BarPressure = mysqli_real_escape_string($enlace, $_GET['BarPressure']);
	$Humidity = mysqli_real_escape_string($enlace, $_GET['Humidity']);
	
    // Esta es la instrucción para insertar los valores

  $query = "INSERT INTO valores(WindDirection,WindSpeedAverage,WindSpeedMax,Temperature,RainfallOneHour,RainfallOneDay,BarPressure,Humidity ) VALUES('".$WindDirection."','".$WindSpeedAverage."','".$WindSpeedMax."','".$Temperature."','".$RainfallOneHour."','".$RainfallOneDay."','".$BarPressure."','".$Humidity."')";
   
 // Ejecutamos la instrucción
    mysqli_query($enlace, $query);
    mysqli_close($enlace);
?>
Etiquetas: $_GET - MySQL - PHP - PHP Fatal error - PHP MySQLi - Pregunta Votos: 4 - Respuestas: 2 - Vistas: 9 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 27-09-2016 12:45:11 me respondo sola..... van comillas dobles
     $Humidity = mysqli_real_escape_string($enlace, $_GET["Humidity"]);
    


    y por http va asi
    http://192.168.1.10/estacion/captura.php?WindDirection=1&WindSpeedAverage=2&WindSpeedMax=3&Temperature=4&RainfallOneHour=5&RainfallOneDay=6&BarPressure=7&Humidity=8



    SOLUCIONADO
      Votos: 2 - Link respuesta
     
  • Fecha: 27-09-2016 15:05:34 Hola Anabel, antes que nada bienvenida a la comunidad y muchas gracias por documentar tan bien tu pregunta, es un gusto leerte, muy claro, y también muchas gracias por tomarte el tiempo en documentar tu solución. Como siempre decimos en la comunidad, las buenas preguntas suelen obtener buenas respuestas, solo que en este caso no nos has dado tiempo de responder, publicaste tu pregunta 18:28hs y 18:45 la solución :) jajaja

    Volviendo al tema, me gustaría mencionar que es indistinto el uso de comillas simples o dobles, más bien tu problema estaba en la prametrización de "captura.php", el primer parámetro siempre debe ser antecedido por la incógnita ?, y los subsiguientes antecedidos con el ampersand & (como lo has ejemplificado en tu respuesta, en la nueva llamada http).

    Saludos y buen código!
      Votos: 2 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com