如何在一个在线服务器上运行php程序

时间:2016-08-03 04:19:38

标签: java php android mysql

我有一些可以在我的在线PHP,MySQL服务器上自由运行的php文件。 作为示例,如果它关注 addUser.php (这是代码)

<?php
if($_SERVER['REQUEST_METHOD']=='POST'){

$name = $_POST['name'];
$email = $_POST['email'];
...

$sql = "INSERT INTO users (name,email,...) VALUES ('$name','$email',...)";

require_once('DbConnect.php');

if(mysqli_query($con,$sql)){
        echo 'User Added Successfully';
 }else{
       echo 'Could Not Add User';
 }

 mysqli_close($con);
 }

我已经使用URL编码我的ANDROID应用程序以通过 StringRequest 访问此类型的php文件

http://www.***.com/addUser.php

并使用 HashMaps

传递参数

所以,我想知道当android用户访问它时这个php文件是如何运行的,当成千上万的android用户开始访问这个php文件并开始同时将数据插入我的在线服务器数据库时会发生什么。 如果出现问题,解决方案是什么?

我只是想知道当许多用户同时尝试相同的php文件时会出现问题吗?我的意思是我们在多线程中使用同步来防止在许多用户同时使用同一个问题时发生问题。因为当成千上万的用户通过这个php文件添加数据时会出现问题

2 个答案:

答案 0 :(得分:0)

似乎您已经为Android应用程序开发了一个用于插入数据的API。我建议你在插入数据之前先放一个认证层。例如,您可以为应用程序用户使用“哈希”或“盐”算法生成令牌。如果他们使用该令牌请求,您必须在API中决定是接受请求还是拒绝。

答案 1 :(得分:0)

让我们假设您将继续使用此脚本。

  1. 您必须停止插入重复的电子邮件
  2. 在插入用户之前运行select * from users where email = '$email'。如果是results.length == 0,请插入用户,如果没有返回错误。

    1. 验证传入的POST数据
    2. 在这里你应该做一些基本的验证:

      $name = $_POST['name'];
      $email = $_POST['email'];
      // Do some checks here which will validate the email
      

      有关验证的详细信息,请参阅以下页面:

      http://php.net/manual/en/filter.examples.validation.php

      除此之外还有一些楼层

      1. 您应该让用户使用密码
        • 密码也应该经过哈希处理
      2. SQL注入
      3. 还有一件事,也许看看其他例子。 E.g

        http://www.tutorialspoint.com/php/php_login_example.htm

        编辑:

        好像你想要实施谷歌登录(根据你的评论)。

        以下是我的表现:

        1. 在客户端(应用)上,用户将登录google acc。
        2. 作为回报,我们将获得accountId和OAUTH令牌
        3. 然后我们将令牌+ OAUTH令牌发送到我们的PHP服务器。
        4. 然后,php服务器将使用google php库来验证我们从客户端检索到的OAUTH令牌。
        5. 然后,图书馆将返回该用户的信息,包括google id和所请求的其他相关信息。
        6. 通过交叉检查针对我们的数据库返回的Google ID来检查用户是否拥有帐户。
          • 从dbTABLENAME中选择*,其中googleId =
        7. 如果在步骤6中没有返回任何内容,我们会将googleId +其他信息(电子邮件)存储在我们自己的数据库中,如果在步骤6中返回了某些内容,我们会将某种令牌返回给用于验证所有其他请求的客户端
        8. 此链接有用 - &gt;

          http://phppot.com/php/php-google-oauth-login/