gpt4 book ai didi

php - 如何使用 APIController 在 CakePHP 中插入数据?

转载 作者:行者123 更新时间:2023-11-30 22:25:51 25 4
gpt4 key购买 nike

我在Apicontroller.php中有一个Function Order,我已经做了一个注释列,但是为什么它不想把记录列存储到数据库中订单,我很困惑地在 CakePHP 中找到数据插入过程的位置,但是发送电子邮件已经成功,这是我的代码:

public function Order()
{
$status = false;
$message = ERR_04;
$code = "04";

$request["Order"]["service_id"] = empty($_REQUEST["service_id"]) ? "" : $_REQUEST["service_id"];
$request["Order"]["user_id"] = empty($_REQUEST["user_id"]) ? "" : $_REQUEST["user_id"];
$request["Order"]["fullname"] = empty($_REQUEST["fullname"]) ? "" : $_REQUEST["fullname"];
$request["Order"]["email"] = empty($_REQUEST["email"]) ? "" : $_REQUEST["email"];
$request["Order"]["phone"] = empty($_REQUEST["phone"]) ? "" : $_REQUEST["phone"];

$request["Order"]["gender"] = empty($_REQUEST["gender"]) ? "" : $_REQUEST["gender"];
$request["Order"]["address"] = empty($_REQUEST["address"]) ? "" : $_REQUEST["address"];
$request["Order"]["lt"] = empty($_REQUEST["lt"]) ? "0" : $_REQUEST["lt"];
$request["Order"]["unit"] = empty($_REQUEST["unit"]) ? "0" : $_REQUEST["unit"];

$request["Order"]["city_id"] = empty($_REQUEST["city_id"]) ? "" : $_REQUEST["city_id"];
$request["Order"]["district_id"] = empty($_REQUEST["district_id"]) ? "" : $_REQUEST["district_id"];

$request["Order"]["village_id"] = empty($_REQUEST["village_id"]) ? "" : $_REQUEST["village_id"];
$request["Order"]["date_order"] = empty($_REQUEST["date_order"]) ? "" : $_REQUEST["date_order"];
$request["Order"]["time_order"] = empty($_REQUEST["time_order"]) ? "" : $_REQUEST["time_order"];
$request["Order"]["time_finish"] = empty($_REQUEST["time_finish"]) ? "" : $_REQUEST["time_finish"];
$request["Order"]["building_id"] = empty($_REQUEST["building_id"]) ? "" : $_REQUEST["building_id"];

//“注意”变量不能保存在数据库中

    $request["Order"]["note"]                   =   empty($_REQUEST["note"]) ? "" : $_REQUEST["note"];

//我不知道为什么

    $request["Order"]["total_maid"]                 =   empty($_REQUEST["total_maid"]) ? "1" : $_REQUEST["total_maid"];
$request["Order"]["total_shift"] = empty($_REQUEST["total_shift"]) ? "1" : $_REQUEST["total_shift"];
$request["Order"]["different_gender"] = empty($_REQUEST["different_gender"]) ? "0" : $_REQUEST["different_gender"];

$request["Order"]["price"] = empty($_REQUEST["price"]) ? "0" : $_REQUEST["price"];

$request["Order"]["total"] = $request["Order"]["total_maid"] * $request["Order"]["total_shift"] * $request["Order"]["price"];

$request["Order"]["duration"] = empty($_REQUEST["duration"]) ? "0" : $_REQUEST["duration"];

$timeCoonvert = strtotime($request["Order"]["date_order"]." ".$request["Order"]["time_order"].":00");
$request["Order"]["expired_order"] = date("Y-m-d H:i:s",mktime(date("H")+5,date("i"),date("s"),date("m"),date("d"),date("Y")));

$this->loadModel('Order');
$this->Order->ValidateCheckout();
$this->Order->set($request);

$error = $this->Order->InvalidFields();
if(empty($error))
{
$status = true;
$message = ERR_00;
$code = "00";
$save = $this->Order->save($request,array("validate"=>false));
$ID = $this->Order->getLastInsertId();

$this->Order->BindAll(false);
$data = $this->Order->find('first',array(
'conditions' => array(
'Order.id' => $ID
)
));
$different_gender = ($request["Order"]["different_gender"] == "1") ? "Ya" : "Tidak";
/****************** EMAIL NOTIFICATION ************************/
$search = array(
'[web_url]',
'[logo_url]',
'[cms_url]',
'[order_id]',
'[fullname]',
'[phone]',
'[address]',
'[email]',
'[date_order]',
'[time_order]',
'[total_maid]',
'[different_gender]',
'[total_shift]',
'[bank]',
'[total]'
);

$replace = array(
$this->settings["web_url"],
$this->settings["logo_url"],
$this->settings["cms_url"],
$data["Order"]["order_id_display"],
ucwords(strtolower($data["Order"]["fullname"])),
$data["Order"]["phone"],
$data["Order"]["address"]."<br/>".ucfirst($data["Village"]["name"])."<br/>".ucfirst($data["District"]["name"])."<br/>".ucfirst($data["City"]["name"]),
$request["Order"]["email"],
date("d M Y",strtotime($data["Order"]["date_order"])),
substr($data["Order"]["time_order"],0,-3),
$data["Order"]["total_maid"],
$different_gender,
$data["Order"]["total_shift"],
str_replace("\n","<br/>",$this->settings['bank_payment']),
"Rp ".number_format($data["Order"]["total"],0,null,",")
);
$this->Action->EmailSend('order', trim($request['Order']['email']), $search, $replace,array(),array(),"Order",$ID,"");
$this->Action->EmailSend('order', "customer@gomaid.co.id", $search, $replace,array(),array(),"Order",$ID,"");
/****************** EMAIL NOTIFICATION ************************/
}
else
{
$status = false;
foreach($error as $k => $v)
{
$message = $v[0];
break;
}
$code = "03";
$data = null;
}

$out = array("status"=>$status,"message"=>$message,"data"=>$data,"code"=>$code,"request"=>$_REQUEST,"files"=>$_FILES);
$json = json_encode($out);
echo $json;
pr($out);
}

这是我收到的邮件....

http://prntscr.com/a05oq9

但这是我的表格 Orders 在注释字段中仍然是空的....

http://prntscr.com/a05pa5

有解决办法吗?我很困惑,我是 CakePHP 的新手,请帮助我...我正在使用 Eclipse 代码 Android 将 Web 中的数据与 CakePHP 一起发送到数据库。

最佳答案

为了其他可能遇到此问题的人,这些是后续步骤:

  1. 清除 app/tmp/cache/model/* 所有文件。
  2. 调试模式设置为2
  3. 使您的 app/tmp 目录可写。

注意:对数据库架构的任何更改都需要遵循 12 的步骤,以便 cakePHP 检测所做的更改。

关于php - 如何使用 APIController 在 CakePHP 中插入数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35254980/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com