Получение 0 идентификатора с разделом [id]

Я занимался этой базой данных всю ночь, и я не могу понять, почему я получаю 0 для идентификатора заказа в корзине таблицы, когда я размещаю заказ из приложения Android. То, что вставляется в обе таблицы, не проблема, но только для orderid в таблице корзины, которая всегда возвращает 0 в таблице.

тележка

<?php
require "connection.php";
session_start();
$foodname=$_POST["food_name"];
$cartquantity=$_POST["cart_quantity"];
$id=$_POST["id"];
$pickuptime=$_POST["pick_up_time"];
$orderid= $_SESSION["last_id"];


$mysqli_qry = "insert into cart (orderid,foodname,cartquantity,id,pickuptime) 
values ('$orderid','$foodname','$cartquantity','$id','$pickuptime')";

if ($conn->query($mysqli_qry,$mysqli_qry1)==TRUE){
echo "Insert Successful";

}
else {
echo "Error:".$mysqli_qry."<br>".$conn->error;
}

?>

заказывать

<?php
$hostname = "localhost";
    $username = "root";
    $password = "";
    $database = "";
$conn = new PDO("mysql:host=$hostname;dbname=$database", $username, 
$password);

$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
session_start();
$id=$_POST["id"];
$pickuptime=$_POST["pick_up_time"];
$pickupdate=$_POST["pick_up_date"];
$amount=$_POST["amount"]; 

$mysqli_qry = "insert into `order` (`id`,`pickuptime`,`pickupdate`,`amount`) 
values ($id,$pickuptime,$pickupdate,$amount)";

$conn->exec($mysqli_qry);
$_SESSION["last_id"] == $conn->lastInsertId();

?>

Обновлять Для моей части Android

public class BackgroundWorker extends AsyncTask<String,Void,String> {
Context context;
AlertDialog alertDialog;
BackgroundWorker (Context ctx){
    context=ctx;
}
@Override
protected String doInBackground(String...params){
    String type=params[0];
    String order_url = "http://192.168.28.1/restaurant/orderdb.php";
    String cart_url = "http://192.168.28.1/restaurant/cartdb.php";
    if (type.equals("order")){
        try{
            String id=params[1];
            String pick_up_time=params[2];
            String pick_up_date=params[3];
            String amount=params[4];
            URL url=new URL(order_url);
            HttpURLConnection httpURLConnection=(HttpURLConnection)url.openConnection();
            httpURLConnection.setRequestMethod("POST");
            httpURLConnection.setDoOutput(true);
            httpURLConnection.setDoInput(true);
            OutputStream outputStream=httpURLConnection.getOutputStream();
            BufferedWriter bufferedWriter=new BufferedWriter(new OutputStreamWriter(outputStream,"UTF-8"));
            String post_data= URLEncoder.encode("id","UTF-8")+" = "+URLEncoder.encode(id,"UTF-8")+"&"+URLEncoder.encode("pick_up_time","UTF-8")+" = "+URLEncoder.encode(pick_up_time,"UTF-8")+"&"+URLEncoder.encode("pick_up_date","UTF-8")+" = "+URLEncoder.encode(pick_up_date,"UTF-8")+"&"+URLEncoder.encode("amount","UTF-8")+" = "+URLEncoder.encode(amount,"UTF-8");
            bufferedWriter.write(post_data);
            bufferedWriter.flush();
            bufferedWriter.close();
            outputStream.close();
            InputStream inputStream=httpURLConnection.getInputStream();
            BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(inputStream,"iso-8859-1"));
            String result = "";
            String line = "";
            while((line=bufferedReader.readLine())!=null){
                result+=line;
            }
            bufferedReader.close();
            inputStream.close();
            httpURLConnection.disconnect();
            return result;
        }catch(MalformedURLException e){
            e.printStackTrace();
        }catch (IOException e){
            e.printStackTrace();
        }
    }
    else if (type.equals("cart")){
        try{
            String food_name=params[1];
            String cart_quantity=params[2];
            String id=params[3];
            String pick_up_time=params[4];
            URL url=new URL(cart_url);
            HttpURLConnection httpURLConnection=(HttpURLConnection)url.openConnection();
            httpURLConnection.setRequestMethod("POST");
            httpURLConnection.setDoOutput(true);
            httpURLConnection.setDoInput(true);
            OutputStream outputStream=httpURLConnection.getOutputStream();
            BufferedWriter bufferedWriter=new BufferedWriter(new OutputStreamWriter(outputStream,"UTF-8"));
            String post_data= URLEncoder.encode("food_name","UTF-8")+" = "+URLEncoder.encode(food_name,"UTF-8")+"&"+URLEncoder.encode("cart_quantity","UTF-8")+" = "+URLEncoder.encode(cart_quantity,"UTF-8")+"&"+URLEncoder.encode("id","UTF-8")+" = "+URLEncoder.encode(id,"UTF-8")+"&"+URLEncoder.encode("pick_up_time","UTF-8")+" = "+URLEncoder.encode(pick_up_time,"UTF-8");
            bufferedWriter.write(post_data);
            bufferedWriter.flush();
            bufferedWriter.close();
            outputStream.close();
            InputStream inputStream=httpURLConnection.getInputStream();
            BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(inputStream,"iso-8859-1"));
            String result = "";
            String line = "";
            while((line=bufferedReader.readLine())!=null){
                result+=line;
            }
            bufferedReader.close();
            inputStream.close();
            httpURLConnection.disconnect();
            return result;
        }catch(MalformedURLException e){
            e.printStackTrace();
        }catch (IOException e){
            e.printStackTrace();
        }
    }
    return null;
}

Невозможно проверить ошибки в вашем коде, не видя вашего кода Android.

Reaz Murshed 30.04.2018 17:37

Я обновил свою часть Android

Jacky 30.04.2018 17:43

Какой у вас post_data? Вы регистрировали свои пост-данные, чтобы проверить, правильно ли построен post_data?

Reaz Murshed 30.04.2018 17:45
0
3
45
1

Ответы 1

Вы не определили переменную orderid в params, и она отсутствует в post_data.

как я могу определить orderid в params = .section id? Простите за глупый вопрос. Я действительно смущен этим.

Jacky 01.05.2018 04:56

Другие вопросы по теме