繁体   English   中英

PHP脚本中未定义的变量

[英]Undefined variable in php script

严重的是,我不知道我的php脚本怎么了。 我想通过php脚本将数据从android更新到MySQL。 timein外,所有列值都可以更新 我无法弄清楚代码中有什么问题。

在此处输入图片说明

updateDetails.php

<?php

    if($_SERVER['REQUEST_METHOD']=='POST'){
        //Getting values 
  $id =$_POST['id'];
  $project =$_POST['project'];
  $description =$_POST['description'];
  $progress =$_POST['percentage'];
  $timeIn =$_POST['timein'];
  $timeOut = $_POST['timeout']; 

   require_once('dbConnect.php');

 $sql = "UPDATE work_details SET  project = '$project', work_description = '$description', percentage = '$progress', timeIn = '$timein' , timeOut ='$timeOut' WHERE id = $id;";

  //Updating database table 
 if(mysqli_query($con,$sql)){
 echo ' Updated Successfully';
 }else{
 echo 'Could Not Update. Try Again';
 }
 //closing connection 
 mysqli_close($con);
    }

 ?>

UpdateDetails函数

public void Update( final String project, final String description, final int progress, final String timeIn, final String timeOut)
{
    class UpdateInfo extends AsyncTask<Void,Void,String>{
        ProgressDialog loading;
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            loading = ProgressDialog.show(Edit_Details.this,"Updating...","Wait...",false,false);
        }

        @Override
        protected void onPostExecute(String s) {
            super.onPostExecute(s);
            loading.dismiss();
            Toast.makeText(Edit_Details.this,s,Toast.LENGTH_LONG).show();
        }

        @Override
        protected String doInBackground(Void... params) {
            HashMap<String,String> hashMap = new HashMap<>();
            hashMap.put(Config.KEY_ID,ID);
            hashMap.put(Config.KEY_PROJECT,project);
            hashMap.put(Config.KEY_DESCRIPTION,description);
            hashMap.put(Config.KEY_PROGRESS,String.valueOf(progress));
            hashMap.put(Config.KEY_TIME_IN,timeIn);
            hashMap.put(Config.KEY_TIME_OUT,timeOut);
            RequestHandler rh = new RequestHandler();
            String s = rh.sendPostRequest(Config.URL_UPDATEDETAILS,hashMap);

            return s;
        }
    }

    UpdateInfo ue = new UpdateInfo();
    ue.execute();
}

设定档

  public static final String KEY_TIME_IN="timein";

您的SQL语句有

"... timeIn = '$timein' ..."

但是您在此之前将变量声明为

$timeIn =$_POST['timein']; 

确保修正大小写,以便变量匹配。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM