E4A与MySql数据库连接
•关于MySql
mysql是十分受欢迎的数据库,被大量应用于各种程序,w3c官网也有很多关于mysql的教程,大家需要的话可以去看。本教程仅针对E4A连接数据库这块进行说明。
•为什么用MySql
mysql数据库很好用,并发高,响应快,是不错的数据存储方式。
•MySql有什么用
mysql可以用来做登录、留言管理、聊天系统数据支持等。
•连接方式
用E4A连接mysql的方法主要有两种。
一是直接将mysql连接信息包括密码写入你软件的代码里(不安全,如果你的软件没有经过专业加密可能会被反编译,黑客将得到密码);
二是用php的mysql中间件连接(相对安全,密码记录在php文件,你软件的代码里不包含密码,即使软件被反编译也得不到密码)。
•操作方法
一、直接连接
直接连接数据库是可以的,但有些同学总不能成功,反复校验密码都没问题,主要原因是你的数据库为了安全限制了连接,仅在服务器上可以连接,例如:你服务器上有个网站用到了数据库,此时可以连接,因为网站和数据库处于同一个服务器,相当于本地连接,不受数据库的登录规则限制,且这是只能用localhost或127.0.0.1做地址。此时,我们需要手动为数据库开放外部连接的权限,即允许外网可以访问。
二、通过php中间件连接
相比于第一种方法,本方法更容易实现也更安全,具体的操作如下:
其中有一篇说明:
本中间件用于远程连接MySQL数据库,请将本目录下的这两个php文件放到你的服务器或空间(必须能支持php),然后在E4A代码里填写openapi_unsafe.php的完整路径即可。
如果使用放在E4A官方服务器上的php中间件,连接示例如下:
MySQL_连接("e4a","126.41.252.40:3306","root","1234567","testsql")
如果使用放在你自己服务器上的php中间件,连接示例如下:
MySQL_连接("http://126.41.252.40/openapi_unsafe.php","localhost:3306","root","1234567","testsql")
如果你的MySQL数据库安装在内网中,请先进行端口映射,连接示例如下:
MySQL_连接("e4a","n.nat123.net:9835","root","1234567","testsql") '此处n.nat123.net:9835是用nat123工具进行端口映射后的地址
关于MySQL数据库操作中在APK被反编译后会暴露数据库账号和密码的问题,大家可以把账号和密码直接写到php中间件中,具体修改方法为:在openapi_unsafe.php文件中的第20行,把$mainbody[1]改成你的数据库用户名,$mainbody[2]改成你的数据库密码,然后把修改后的这个php中间件重新上传到你的服务器,最后在E4A中连接数据库的代码中,用户名和密码填空文本即可;
按照官方给的说明,改下
将它打包上传到服务器的空间上,使得本文件能被外网访问到
在E4A中使用
只要这样设置一般可以连上,如果有问题可以仔细检查下再试,一定要细心。
更多建议: