如何使用PHP从设备接收GPS数据?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用PHP从设备接收GPS数据?相关的知识,希望对你有一定的参考价值。
我有一个车载GPS设备,我唯一能改变的是IP地址。
是否可以使用专用IP地址(该部分是可能的)共享主机,然后使用php脚本来获取正在发送的数据?
那么我的想法是什么:
- GPS设备将gps数据发送到IP地址。
- 该IP地址有一个PHP脚本,可以获取数据并使用它。
按要求更详细一点。有一个问题完全相同但没有答案:how-to-get-data-from-gps-and-send-to-server-and-how-save-to-database
这是一款带有标准IP地址的中国车载GPS设备。因此它将数据发送到该IP地址。然后他们给我们一个网站,我们可以用产品代码登录,我们可以看到GPS的位置。
可以更改此设备中的IP地址。我发现共享主机具有专用IP地址,但这意味着IP地址只是替换URL,因此它只是作为URL工作,所以我不能更改服务器并安装类似openGTS的东西。
但我不知道这个设备正在发送什么样的数据(我不认为它只是GET或POST数据)。所以我想知道GPS是否正在将数据发送到IP地址我是否必须在该服务器上使用java做一些特殊的事情,或者我能够使用PHP脚本来拾取GPS设备发送的内容?一旦我得到数据,我知道如何处理它。我只需要PHP脚本提取的数据。
我希望没有捷径。对于将TCP / UDP数据发送到IP地址和端口的gps跟踪器设备,我们确实需要一台服务器。没有POST / GET数据。服务器将通过需要解码的端口接收数据。但它没有我想象的那么复杂。即使不了解Java,我也能够安装软件并根据自己的喜好进行操作。
我做了什么:
- 有一个Windows服务器(2012)托管(6个月免费)所以我可以尝试一下。
- 下载了opengts并完全按照他们的说明书。并没有发现它很难。它工作没有太多头痛
- 一旦我到达了一切正常工作的部分,我可以使用该设备,它工作正常。当然,我们需要知道设备正在发送和解码的协议(数据),以便将其保存在数据库中。
你需要这个:
- 电话(号码)(带GPS)。
- 智能手机(android并开发自己的APP) - (像子服务器一样)。
- 带有mysql(数据库)的(家庭服务器)或(Web服务器)。
- 在服务器或WebPage中使用PHP的脚本(第3点)。
所以:
- (带GPS的电话号码)只是等待电话或其他东西发送“数据”。
- (智能手机)从(带GPS的电话号码)获取数据。
- 只能通过你的(带有GPS的电话号码)和(你自己的Android Android)阅读留言板并使用(你自己的Android APP)处理“数据”。
- 获取(Lat)和(Lon)坐标的“字符串”或从(消息板)发送到您的(PHP脚本)的所有需要使用HTTP请求到您的(主服务器或WebPage)从您的(智能手机)使用您的(自己的Android APP)。
- 使用您的(PHP脚本)并保存在您的(MySQL数据库)中。
- ...你现在可以用“数据”完成所有事情,比如用其他php脚本和谷歌地图api显示,或者用于java上的桌面应用程序,或者用于Visual Basic等等...或者你想要的一切。
注意:*不要使用您的(智能手机),只能用于您所需的所有(电话号码)的“数据”使用您的(自己的Android APP)使用代码阅读留言板,这样您的(智能手机)现在就像一个“迷你服务器“并且仅作为(您的电话号码与GPS)和您的(家庭服务器或WebPage)中的(PHP脚本)与(MySQL数据库)之间的中介。
您需要使用数据库,创建PHP脚本(POST查询)并在GPS位置更改时将查询更新到数据库中,而不是您可以使用另一个PHP脚本从数据库访问此位置(GET并返回json对象)
如果您有共享主机,则只能打开80端口。因此,在您的设备中,您需要在端口80上向该IP发出HTTP请求。
要发出正确的HTTP请求,请阅读RFC2616(http://www.w3.org/Protocols/rfc2616/rfc2616.html)以开始使用HTTP协议。
至少,您需要在HTTP请求中提供主机名和URI。
在该URI上,您的PHP脚本将能够读取数据并对其执行某些操作。
以上是关于如何使用PHP从设备接收GPS数据?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 WAMP/LAMP 上通过 PHP 接收 TCP 数据(不是 HTTP)?