Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用Arduino或类似解决方案更改web浏览器页面_Php_Mysql_Browser_Arduino_Rfid - Fatal编程技术网

Php 使用Arduino或类似解决方案更改web浏览器页面

Php 使用Arduino或类似解决方案更改web浏览器页面,php,mysql,browser,arduino,rfid,Php,Mysql,Browser,Arduino,Rfid,我正在开发一个项目,通过SQL数据库注册RFID卡条目等 我使用Arduino读取卡片,通过PHP程序发送RFID数据和读卡器ID,然后PHP程序处理数据,并在MySQL上注册 在数据库中注册卡片是我的问题。 我如何做到这一点,Arduino会更改或打开一个WebBrowser页面,或者当我打开某个链接时,比如something.com/RegisterCard.php,当我读取一张卡片时,它会自动将其输入注册字段 谢谢 我一直在做类似的事情,我没有读取RFID,而是读取几个传感器来存储数据,然

我正在开发一个项目,通过SQL数据库注册RFID卡条目等

我使用Arduino读取卡片,通过PHP程序发送RFID数据和读卡器ID,然后PHP程序处理数据,并在MySQL上注册

在数据库中注册卡片是我的问题。 我如何做到这一点,Arduino会更改或打开一个WebBrowser页面,或者当我打开某个链接时,比如something.com/RegisterCard.php,当我读取一张卡片时,它会自动将其输入注册字段


谢谢

我一直在做类似的事情,我没有读取RFID,而是读取几个传感器来存储数据,然后arduino本身请求一些变量(存储在数据库中)并响应它的值

我发现的最简单的方法可能不是最有效的,但却有效

我的方法涉及一个PHP“解释器”,它将根据arduino发送的内容存储到数据库中,或者读取并返回

所以更像是“当我打开某个链接时,比如something.com/RegisterCard.php,当我读一张卡片时,它会自动将其输入注册字段。”

例如,要通过GSM shield存储来自gps的纬度/经度变量,我使用以下代码:

  sim908.print("AT+HTTPPARA=\"URL\",\"YOU_WEB_SERVER_URL_/insert.php?latitude=");
  sim908.print(latitude);
  sim908.print("&longitude=");
  sim908.print(longitude);
  sim908.println("\"");
  delay(2000);
  sim908.println("AT+HTTPACTION=0"); //now GET action
  delay(2000);
我有一个页面“insert.php”来处理数据,并将其存储到数据库中

这是我的php处理程序

<html> 

<body> 

<?php 
//funcion para adquirir parametros
       function getParameter($par, $default = null){
            if (isset($_GET[$par]) && strlen($_GET[$par])) return $_GET[$par];
            elseif (isset($_POST[$par]) && strlen($_POST[$par])) 
                return $_POST[$par];
            else return $default;
        }

         $latitud = getParameter("latitud");
         $longitud=getParameter("longitud");
         $evento=getParameter("evento");

         $time = time();
         $fecha = date("d-m-Y", $time);
         $hora = date("H:i:s", $time);


//Conectarse y seleccionar base de datos 
$link = mysql_connect('localhost', 'mysql_user','mysql_pass'); 
if (!$link) { 
die('Could not connect: ' . mysql_error()); 
} 

echo 'ok';


$db_selected = mysql_select_db('mydatabase', $link); 


if (!$db_selected) { 
die ('Cant use ods_db : ' . mysql_error()); 
} 
// Tomar los campos provenientes del Formulario 
//$latitud = $_POST['latitud']; 
//$longitud = $_POST['longitud']; 

// Insertar campos en la Base de Datos 
$que = "INSERT INTO tracklog (fecha, hora,latitud, longitud,event) "; 
$que.= "VALUES ('".$fecha."','".$hora."','".$latitud."', '".$longitud."', '".$evento."') "; 
$res = mysql_query($que, $link) or die(mysql_error()); 
$orden = mysql_insert_id();
// Cerrar conexión a la Base de Datos 
mysql_close($link); 
?> 
</body> 

</html> 


感谢您的回复,这是我之前考虑过的一个解决方案,但它需要用户从“等待注册”条目列表中进行选择,这将是一张光滑的纸上的一个凸起(#BestMetafor2016)。我想知道是否有可能在浏览器中打开Register.php,当我读到一张卡片时,它会将读到的值输入到表单中。