将MySQL变量从一个PHP脚本传递到另一个PHP脚本,并从Android应用程序将该变量插入MySQL中

将MySQL变量从一个PHP脚本传递到另一个PHP脚本,并从Android应用程序将该变量插入MySQL中,php,android,mysqli,Php,Android,Mysqli,我不熟悉Android编程。我正在尝试构建一个Android项目,该项目使用PHP连接到在线MySQL服务器,以将数据从Android设备传递到在线服务器。我有两个表,其中一个表包含员工的登录详细信息,即员工_数据, 第二个表包含相应的员工详细信息,即员工详细信息 因此,我有两个PHP文件:第一个PHP脚本用于员工登录,当员工单击登录按钮时运行。该脚本需要获取登录员工的用户名并将其传递给第二个PHP文件。第二个PHP脚本用于插入各自员工的详细信息。现在我需要将用户名从第一个PHP脚本传递到第二个

我不熟悉Android编程。我正在尝试构建一个Android项目,该项目使用PHP连接到在线MySQL服务器,以将数据从Android设备传递到在线服务器。我有两个表,其中一个表包含员工的登录详细信息,即员工_数据, 第二个表包含相应的员工详细信息,即员工详细信息

因此,我有两个PHP文件:第一个PHP脚本用于员工登录,当员工单击登录按钮时运行。该脚本需要获取登录员工的用户名并将其传递给第二个PHP文件。第二个PHP脚本用于插入各自员工的详细信息。现在我需要将用户名从第一个PHP脚本传递到第二个PHP脚本,并将该用户名插入表“EMPLOYEE_DETAILS”的“username”列中。请任何人建议如何进行。我尝试过使用$\u会话,但没有得到预期的结果。我已经被这个问题困扰了很长时间。任何帮助都将不胜感激

编辑1:

Login.php

    <?php

$_SESSION['user_mobile'] =  $_POST["mobile_num"];
$_SESSION['user_pass'] = $_POST["password"];
require "conn.php";

$user_mobile='';
 $user_pass='';

$user_mobile = $_SESSION['user_mobile'];
$user_pass = $_SESSION['user_pass'];

$mysql_qry = "select * from employee_data where mobile like '$user_mobile' and password like '$user_pass';";
$result = mysqli_query($conn,$mysql_qry);
if(mysqli_num_rows($result) > 0 ) {
    $row = mysqli_fetch_assoc($result);
    $_POST['user'] = $name;
    $name= $row["name"];
    echo "Login successful.<br /> Welcome " ;
        echo $name; 
        $insertName = "INSERT INTO employee_details(name) VALUES ('$name');";
        $resultName = mysqli_query($conn,$insertName);
        $shift = "SELECT CASE WHEN CURTIME() < 7 THEN 'Morning'
                              WHEN CURTIME() < 12 THEN 'Afternoon'
                              WHEN CURTIME() <17 THEN 'Evening'
                              ELSE 'Night'
                              END;";

        $insertShift = "insert into employee_details(shift) values ('$shift');";
        $resultShift = mysqli_query($conn,$insertShift);  
} 
else{
echo "Login failed.";   
} 
?>

您正在declare
$name
变量之前定义
$\u POST['user']=$name
,请尝试此
login.php

<?php
require "conn.php";

$user_mobile= $_POST["mobile_num"];
$user_pass = $_POST["password"];;


$mysql_qry = "SELECT * FROM employee_data WHERE mobile = '$user_mobile' AND password ='$user_pass'";
$result = mysqli_query($conn,$mysql_qry);
if(mysqli_num_rows($result) > 0 ) {
    $row = mysqli_fetch_assoc($result);
    $name= $row["name"];
    $_POST['user'] = $name;
    echo "Login successful.<br /> Welcome",$name ;
    // Your rest of code

?>

只要试着在insert.php中显示
echo$\u POST['user']

为了更好的理解,请看这个

建议请使用
准备
声明,而不是直接
mysqli\u查询
函数。为什么要在SQL查询中使用
like
为登录到用户匹配密码而不是
=


让我们看看你做了什么。没有代码我们就帮不了你。你的问题也不够清楚。你要求android和mysql之间通过php连接吗?@AbhishekSingh我已经附上了php代码。请你检查一下,让我知道如何进行。实际上,我无法将$name变量添加到下一个PHP文件中,该文件用于将详细信息插入各自用户的数据库中。为什么要将此问题标记为androidin另一个PHP?只需制作一个方法并从此处传递参数…将该PHP包含在该文件中php@AbhishekSingh我想在“insert.php”中传递$name变量。一旦用户单击Android设备中的“登录”按钮,“Login.php”脚本就会运行。一旦用户登录并插入输入并单击“提交”按钮,就会调用“insert.php”脚本。因此,我希望在单击“提交”按钮时将$name插入到“EMPLOYEE_DETAILS”表中。那么,我是否需要在“insert.php”中创建一个方法,并从login.php传递$name。这就是您想要说的吗?我想要的是使用手机号码和密码登录,当用户从数据库中登录时,将显示该用户各自的用户名。我想将该用户名传递给下一个PHP脚本,以便将该特定用户的详细信息与用户名一起插入。这样,当用户单击登录页开始会话并存储
$\u会话['username']时,您就可以尝试存储会话=$name
login.php
上,然后在
insert.php
上获取此会话变量。我尝试使用此方法。问题是,如果我在php脚本的开头声明了一个$\u会话['some\u variable',并在insert.php中调用它,那么我就能够访问它。但是,如果我在echo“Login successful.
Welcome”之后声明了一个$\u会话['username']=$名称,就像您提到的那样;语句并尝试在Insert.php中调用此会话变量,此值未被调用。
echo“Login successful”
语句在单击Login时显示
$name
值。是的。echo语句显示$name变量,我尝试将$name变量存储在$\u会话['username']=$name中。然后在insert.php文件中调用$_会话['username']。但是它在Insert.php中不返回$name值,但在Login.php中显示用户的名称效果很好。
<?php
require "conn.php";

$user_mobile= $_POST["mobile_num"];
$user_pass = $_POST["password"];;


$mysql_qry = "SELECT * FROM employee_data WHERE mobile = '$user_mobile' AND password ='$user_pass'";
$result = mysqli_query($conn,$mysql_qry);
if(mysqli_num_rows($result) > 0 ) {
    $row = mysqli_fetch_assoc($result);
    $name= $row["name"];
    $_POST['user'] = $name;
    echo "Login successful.<br /> Welcome",$name ;
    // Your rest of code

?>