【发布时间】:2016-02-13 02:26:43
【问题描述】:
我尝试通过控制器将一些数据从视图提交到模型,但它不会做任何事情。
在视图中,我有一个向控制器提交一些数据的表单
控制器:
if(isset($POST['CNE']))
{
$Craftname=$_POST['Str'].$_POST['Dex'].$_POST['Rec'].$_POST['Int'].$_POST['Wis'].$_POST['Luc'];
$Craftname.=$_POST['HP'].$_POST['MP'].$_POST['SP'].$_POST['Enchant'];
$update = array(
'ItemID' => $_POST['ItemID'],
'Type' => $_POST['Type'],
'TypeID' => $_POST['TypeID'],
'Gem1' => $_POST['Gem1'],
'Gem2' => $_POST['Gem2'],
'Gem3' => $_POST['Gem3'],
'Gem4' => $_POST['Gem4'],
'Gem5' => $_POST['Gem5'],
'Gem6' => $_POST['Gem6'],
'Craftname' => $Craftname,
'Count' => $_POST['Count']
);
$this->item_edit->updateItem($update, $_POST['ItemUID']);
}
还有模特
function updateItem($update, $uid)
{
$this->db->where('ItemUID', $uid);
$this->db->update('PS_GameData.dbo.CharItems' ,$update);
}
提交时,视图显示发布的数据如下
Name Value
ItemName Dreamy Vallum Helmet
ItemUID 4513324807718567936
ItemID 16052
Type 16
TypeID 52
Gem1 7
Gem2 0
Gem3 0
Gem4 0
Gem5 0
Gem6 0
Str 06
Dex 00
Rec 00
Int 00
Wis 05
Luc 04
HP 00
MP 00
SP 00
Enchant 00
Count 1
但数据也不会提交到数据库中。刷新数据时,数据显示与以前一样。它根本不会提示我任何错误。也许有人可以帮我解决这个问题。
【问题讨论】:
-
尝试更新该记录时系统产生的错误是什么?大多数调试都是为了找到错误。我敢打赌,您的列不接受空值,并且您的某些帖子数据未设置。
-
系统不提示任何错误,无论是Firebug还是其他调试器。该表确实不接受 NULL 值,但以上都不是空值,因为它们使用默认的 0 和 00,我将此方法与 mssql 驱动程序和只是 php 一起使用,它可以工作,但在 codeigniter(MVC 模式)中我很新,也许我在查询中做错了,因为在此 POST 发生之前还有 2 个帖子,用户 ID 和 itemid 并使用相同的方法,它们有效,但此表单无效。
-
Firebug 用于调试客户端代码,而不是 PHP。解决问题的第一步是让错误报告正常工作。stackoverflow.com/questions/5911964/…
标签: php sql forms codeigniter