Articles of MySQL

保护php api在android应用程序中使用

我是android开发的新手。 我正在使用android studio开发应用程序。 我做过的事情 在MySQL创建了一个包含两个表的MySQL 。 为GET和POST方法创建了两个独立的api’s 。 成功访问了两个api’s 我现在取得的成就 能够从GET api GET数据。 能够使用POST api POST数据 我现在要做什么 我希望我的api在线发布,即我想将我的服务部署到服务器并访问它们。 此时,我能够在服务器上部署服务并访问它们。 现在我希望我的服务( api’s )得到保护。 为此我搜索了很多文章并find了两种方法。 使用yii框架。 有人告诉我使用它,因为它自动保护了api’s 。 但我不确定是否这样做。 手动保护api’s 至于第1点,框架将是有用的,但它对我来说是新的,因为我已经创建了Web服务,所以需要时间来合作它。 对于第2点,我得到了一些信息 使用HMAC_SHA1 使用PHP检测移动设备 两个链接似乎都很好,但链接1并没有给我很多信息。 显然我想保证我的两个api’s 现在是代码部分 GET_DATA.php require_once (‘config.php’); $sql = “SELECT * FROM users”; $r = mysqli_query($con,$sql); $result = array(); while($row = mysqli_fetch_array($r)){ array_push($result,array( ‘Id’=>$row[‘Id’], […]

如何从MySql服务器到Android应用程序?

我有一个MySql数据库,里面有一些运动结果。 我想写一个Android应用程序来在手机上显示这些数据。 我在互联网上搜索了这个问题,我认为MySql数据库和Android应用程序之间没有直接连接。 (这是正确的吗?) 所以我的问题如下:如何在Android应用程序中访问MySql数据库以显示一些数据?

Firebase FCM令牌 – 何时发送到服务器?

好的,所以我有一个应用程序,在第一次启动时将带您浏览一些欢迎幻灯片,然后转到登录/注册页面,然后转到MainActivity 。 我刚刚实现了FCM ,并且服务在用户看到任何这些页面之前生成token 。 我怎样才能使这个服务在我到达MainActivity 后运行? 问题是我正在尝试在将令牌刷新到MySQL DB到相应的用户帐户时立即发送令牌,但由于用户尚未登录,因此该值为null并且我向服务器发送的消息失败。 设计这个有什么好办法? 我想过在SharedPreferences中保存令牌并在用户登录后将其发送到服务器但是在稍后刷新令牌时会产生很多复杂因素?! 可能的方法 : 我不确定我是否完全理解2服务如何运行但是在onTokenRefresh我只是将令牌保存到SharedPreferences而在MainActivity中我从SP获取值然后将其发送到服务器。 在这种情况下,当刷新令牌时,新值将立即再次进入SharedPreferences 。 但我仍然需要检查它是否是SP中的新值,然后将其重新上载到服务器。 这令人困惑!

无法在数据库中存储表情符号

情况 : 如果已经提出这个问题,请提前抱歉,但解决方案对我不起作用。 无论我尝试什么,我都不能将表情符号存储在我的数据库中。 他们被保存为???? 。 正确保存的唯一表情符号只需要3个字节,如害羞的脸或太阳。 实际的utf8mb4无法正常工作。 它已经在Android和Ios上进行了测试。 结果相同。 版本 : Mysql:5.5.49 CodeIgniter:3.0.0 步骤 : 我修改了数据库字符集和排序规则属性。 ALTER DATABASE my_database CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci 我修改了表字符集和排序规则属性。 ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 我已尽可能将表的每个字段设置为编码: UTF-8(ut8mb4)和排序规则: utf8mb4_unicode_ci 我在CodeIgniter应用程序中修改了数据库连接。 我运行了以下内容: SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci 最后我还试过这个: REPAIR TABLE table_name; OPTIMIZE TABLE table_name; […]

是一个设备还是一个帐户的FCM(firebase云消息传递)令牌?

当用户注册到应用程序时,我想在我的android app用户的数据库表中存储FCM令牌。 当我想向特定用户发送通知时,我将从相应的行获取令牌并发送推送通知。但我很困惑,每当应用程序用户从他的应用程序注销并从同一设备注册新帐户,那么将有两行因此数据库上同一设备的两个令牌。 如何处理这种情况? 设备中的旧令牌会发生什么? 请有人可以帮帮我吗?

向Google Cloud发送REST调用PHPMyAdmin服务器无法正常工作?

我已通过此链接在Google Cloud上成功部署了phpMyAdmin服务器。 我在尝试写入我在phpMyAdmin中创建的数据库时遇到问题。 我正在尝试根据Google发布的新Firebase Cloud Messaging创建通知服务。 NotificationInstanceService.java public class NotificationInstanceService extends FirebaseInstanceIdService { private static final String TAG = “NotificationInstance”; @Override public void onTokenRefresh() { //Getting registration token String refreshedToken = FirebaseInstanceId.getInstance().getToken(); //Displaying token on logcat Log.d(TAG, “Refreshed token: ” + refreshedToken); sendRegistrationToServer(refreshedToken); } private void sendRegistrationToServer(String token) { //You can implement this method to […]

将android与MS SQL SERVER 2008连接

有没有办法可以将Android应用程序连接到中央数据库服务器(例如MSSQLServer 2008)? 我有一个可以通过网站和Android访问的MySQL数据库。 从网站连接到数据库很好,但如何从Android应用程序完成?

值总是返回0,它应该返回插入的行数

我有两个表,一个是Information ,另一个是WorkForce 信息 劳动力 WorkForce中的twf column用于获取Information的id ,假设返回为1,但返回值为0.如果Information中的id 为 5,则twf应为5。 首先,我使用a来表示所选行的数量,然后将a的参数添加到addWorkForce 。 toast总是显示0。 a=addInformation(name,weather,date2,status,first1[1],last1[1]); Toast.makeText(getApplicationContext(),a+””,Toast.LENGTH_LONG).show(); addWorkForce(Sub, NoP, NoH,a); addInformation函数 public long addInformation( final String name, final String weather, final String date2, final String status, final String timeIn, final String timeOut) { class AddInfo extends AsyncTask { ProgressDialog loading; @Override protected void onPreExecute() { super.onPreExecute(); loading = […]

适用于Android的JDBC与Web服务

有人可以回答我的困境用于将Android设备连接到mySQL或Postgresql的方法吗? 我可以在没有任何错误和问题的情况下以两种方式做到这一点,没有明显的区别但是每个人都推荐使用web服务而不是使用jdbc驱动程序和直接连接, 有人可以用一些事实来解释原因吗? 编辑:我没有提到它更简单,需要更少的时间来完成jdbc。 那么,为什么是Web服务,或者为什么不呢?

MySQL – 结合INSERT,VALUES和SELECT?

我对SQL很陌生,而且我真的只是与它进行交互以获得高分数据库的工作。 我正在使用php脚本访问我的在线MySQL数据库。 无论如何。 我所拥有的是2桌,球员和得分。 播放器具有id,uniqueDeviceId和selectedname。 分数具有您期望的常规事物。 我在单个查询中真正想要做的是(为了降低复杂性……)是结合使用的语法 INSERT INTO scores VALUES and INSERT INTO scores SELECT… 变成某种怪物,就像 INSERT INTO scores(score,difficulty,playerid) VALUES(TheScoreThatImProviding,TheDifficultyThatImProviding, (SELECT id FROM player WHERE uniqueDeviceId = TheUniqueIdThatImProviding) ) 如果这是有道理的。 我想查找playerId(第三个“值”),并将该选择的结果与提供的VALUES的输入混合。 这可能吗? 所有的谷歌搜索结果我发现要么全部VALUES或所有SELECT。