Articles of PHP

值总是返回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 = […]

从GCM获得多个通知

我使用PHP一次在多个Android设备上发送通知。 所有注册ID都是唯一的,以下是我发送的CURL请求。 $url=’https://android.googleapis.com/gcm/send’; $headers = array( ‘Authorization: key=’ . ANDROID_KEY, ‘Content-Type: application/json’ ); $registration_ids = [];//with multiple registration ids $notification = array( ‘registration_ids’ => $registration_ids, ‘data’ => array(‘notification_id’ => $data[‘notification_id’], ‘title’ => $data[‘title’], ‘message’ => $data[‘message’]) ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FRESH_CONNECT, true); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_POST, true); […]

Android应用程序与webservice通信的安全性

我正在为一个站点开发一个Android应用程序,我在其中创建了一个function,用户可以将数据发送到应用程序中的站点数据库。 我在android代码中使用PHP Web服务和URL来连接到Web服务。 如何让我的应用程序(和我的PHP Web服务)安全,通过调试我的apk并向网站发送数据量并使网站关闭,没有人找不到网络服务url。 使软件系统免受这些危险的任何提示可以帮助我很多,谢谢(抱歉英语不好) 编辑:例如现在我使用AsyncTask在我的edittext中发送url和数据,如下所示。 我在oncreate中使用此代码以AskServer()的名义将数据发送到AsyncTask类: link = “http://mywebservice-adrress/name.php”; new AskServer().execute(link, edttext.getText().toString()); 这是我的AsyncTask类的doInBackground: @Override protected Object doInBackground(String… params) { BufferedReader buf = null; try { URL link = new URL(params[0]); URLConnection connect = link.openConnection(); connect.setDoOutput(true); OutputStreamWriter osw = new OutputStreamWriter(connect.getOutputStream()); String data = URLEncoder.encode(“field”,”UTF8″) +”=”+ URLEncoder.encode(params[1], “UTF8”); sw.write(data); osw.flush(); } catch (Exception e) […]

上传显然成功后为什么上传的音频已损坏?

我使用JavaScript,PHP和Cordova进行了上传。 一切正常。 但是当我尝试在浏览器或Windows Media Player等桌面播放器中打开上传的mp3时,它说该文件已损坏。 知道为什么会这样吗? 我还必须说,当我在浏览器中检查损坏的文件时,它有video标签而不是音频标签。 我的代码: //method to upload the audio function uploadAudio(recordedSrc) { var win = function(r) { console.log(“Code = ” + r.responseCode); console.log(“Response = ” + r.response); console.log(“Sent = ” + r.bytesSent); } var fail = function(error) { alert(“An error has occurred: Code = ” + error.code); console.log(“upload error source ” […]

C2DM实现PHP代码

我正在创建使用C2DM推送通知的Android应用程序。 但我在创建php代码时遇到问题,使用c2dm发送消息。 请指导我如何使用PHP代码发送消息。 实际上有一个问题,如何获得客户端身份validation令牌。 我已经看到了http://code.google.com/android/c2dm/index.html#serverurl,但根据这个我创建了Android应用程序,我也获得了注册ID,我也发送给用户,但如何服务器使用它来发送应用程序。 服务器从Android设备发送消息需要什么?

Android JSON HttpClient使用HttpResponse将数据发送到PHP服务器

我目前正在尝试将一些来自Android应用程序的数据发送到php服务器(两者都由我控制)。 在应用程序中的表单上收集了大量数据,这些数据被写入数据库。 这一切都有效。 在我的主代码中,首先我创建了一个JSONObject(我在这里为此示例删除了它): JSONObject j = new JSONObject(); j.put(“engineer”, “me”); j.put(“date”, “today”); j.put(“fuel”, “full”); j.put(“car”, “mine”); j.put(“distance”, “miles”); 接下来,我将对象传递给发送,并收到响应: String url = “http://www.server.com/thisfile.php”; HttpResponse re = HTTPPoster.doPost(url, j); String temp = EntityUtils.toString(re.getEntity()); if (temp.compareTo(“SUCCESS”)==0) { Toast.makeText(this, “Sending complete!”, Toast.LENGTH_LONG).show(); } HTTPPoster类: public static HttpResponse doPost(String url, JSONObject c) throws ClientProtocolException, IOException { HttpClient httpclient […]

使用php OpenSSL进行Android应用内购买服务器签名validation

尝试遵循以下针对应用内购买的一些安全准则: http : //developer.android.com/guide/market/billing/billing_best_practices.html 我试图在服务器上而不是在应用程序中自己进行签名validation。 我理想情况下喜欢使用php openssl库,它看起来像以下代码应该工作: 我用app64购买捆绑包中的base64解码签名字符串替换签名,并使用同一捆绑包中的数据。 公钥需要采用PEM格式,我添加了BEGIN和END令牌以及一些换行符。 我的问题是我无法获得此PHP代码来成功validation数据/签名,我不知道需要更改什么才能使其正常工作。 如果我使用openssl,创建一个私钥和公钥,使用sha1为相同的数据创建一个签名,并通过上面的PHP代码运行它,它工作正常并validation成功。 以下是我使用OpenSSL的方法: openssl genrsa -out private.pem openssl rsa -in private.pem -pubout -out public.pem 然后我使用private.pem和一些php代码生成签名: … openssl_sign($data, $signature, $pkeyid); … 有没有人有任何工作样本PHP代码与服务器端validation应用程序内签名? 我可以运行示例应用程序中的等效java代码,这似乎工作正常,但我想尽可能直接使用PHP。

使用Volley发送post请求并以PHP格式接收

我试图在我的项目中使用volley来处理我的所有HTTP请求,因为据我所知它是最有效的。 所以我开始通过AndroidHive教程学习排球。 我的第一个GET请求成功了。 然后我转到POST请求,但我失败了。 我在Stack Overflow上看到很多人在将截击请求与PHP结合起来时遇到了问题。 我相信我们无法使用$_POST[“”]的常规方式访问它,因为齐射将JSON对象发送到我们指定的URL。 我尝试了许多解决方案,但没有成功。 我想应该有一个简单而标准的方法来使用PHP的凌空。 所以我想知道在我的PHP代码中接收volley发送的json对象需要做什么。 还有我如何检查凌空是否真的发送JSON对象? 我的凌空代码发送简单的post请求: JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.POST, url, null, new Response.Listener() { @Override public void onResponse(JSONObject response) { Log.d(TAG, response.toString()); pDialog.hide(); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { VolleyLog.d(TAG, “Error: ” + error.getMessage()); pDialog.hide(); } }) { @Override protected Map getParams() […]

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。

保护可从Android访问的REST API

我们正在构建一款Android游戏,需要访问Web服务 – 因此我们在PHP中编写了一个RESTful API,它在我们自己的服务器上运行。 API提供的是: 创建用户,登录,下载游戏,检索游戏列表,提交分数等等。现在我想,如果一些有经验的用户获得API的URL格式 – 他/他将能够以多种方式废弃系统: 创建一个脚本并运行它来创建自动用户 – 我想我可以通过CAPTCHA或类似的东西来阻止它。 但同样,validation码会惹恼游戏玩家。 恶意用户使用他的浏览器登录,下载游戏然后按照自己的意愿提交分数 – 所有这一切都可以通过简单地从浏览器中输入来调用API。 我假设恶意用户以某种方式知道要调用的API URL – 通过在应用程序发出HTTP请求时嗅探。 我需要确保仅从安装游戏的Android设备发出请求。 (游戏将免费) 现在我该如何防止这种滥用?