我遇到这样的情况,我想更新一些输入为复选框的数据,我在下面尝试了此代码。数据已保存在数据库中,但数据已保存在另一行中,
例如:我为BirdA选中了红色,黄色和灰色,同时为BirdD选中了黑色和蓝色。在数据库中,BirdA的颜色正确保存,但是第二只鸟的深色和蓝色保存在BirdB上(
应保存在BirdD上 )
我想解决上面的问题,因此数据应保存在数据库中的正确位置。请在下面检查我的代码:
我的Db表:
=============================================
| birds | red | blue | grey | yellow | dark |
=============================================
| BirdA | 0 | 0 | 0 | 0 | 0 |
| BirdB | 0 | 0 | 0 | 0 | 0 |
| BirdC | 0 | 0 | 0 | 0 | 0 |
| BirdD | 0 | 0 | 0 | 0 | 0 |
=============================================
看法 :
<tr>
<td><input type="hidden" name="birds[]" value='<?php echo $dp['birds']; ?>' /><?php echo $dp['birds']; ?></td>
<td><p align='center'><input type="text" name="qtt[]" value='<?php echo $dp['qtt']; ?>' tabindex="2" style="width:30px;" /></td>
<td><p align='center'><input type="checkbox" name="red[]" value='1' <?php if($dp['red']==1) { echo " checked=\"checked\""; } ?> /></td>
<td><p align='center'><input type="checkbox" name="blue[]" value='1' <?php if($dp['blue']==1) { echo " checked=\"checked\""; } ?> /></td>
<td><p align='center'><input type="checkbox" name="grey[]" value='1' <?php if($dp['grey']==1) { echo " checked=\"checked\""; } ?> /></td>
<td><p align='center'><input type="checkbox" name="yellow[]" value='1' <?php if($dp['yellow']==1) { echo " checked=\"checked\""; } ?> /></td>
<td><p align='center'><input type="checkbox" name="dark[]" value='1' <?php if($dp['dark']==1) { echo " checked=\"checked\""; } ?> /></td>
</tr>
和控制器:
$birds= $this->input->post("birds");
if (empty($this->input->post("birds"))){
$birds= 0;
}
$qtt= $this->input->post("qtt");
if (empty($this->input->post("qtt"))){
$qtt= 0;
}
$red= $this->input->post("red");
if (empty($this->input->post("red"))){
$red= 0;
}
$blue= $this->input->post("blue");
if (empty($this->input->post("blue"))){
$blue= 0;
}
$grey= $this->input->post("grey");
if (empty($this->input->post("grey"))){
$grey= 0;
}
$yellow= $this->input->post("yellow");
if (empty($this->input->post("yellow"))){
$yellow= 0;
}
$dark= $this->input->post("dark");
if (empty($this->input->post("dark"))){
$dark= 0;
}
for($x = 0; $x < sizeof($birds); $x++){
$reslt[$x] = array(
"birds" => $birds[$x],
"qtt" => $qtt[$x],
"red" => $red[$x],
"blue" => $blue[$x],
"grey" => $grey[$x],
"yellow" => $yellow[$x],
"dark" => $dark[$x]
);
}
$this->db->update_batch('db_birds', $reslt, 'birds');
在执行该代码后,php出现如下错误:
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: x
Filename: controllers/....
Line Number: 613
Backtrace:
File: /home/.....
Line: 613
Function: _error_handler
File: /home/..../index.php
Line: 315
Function: require_once
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 3
Filename: controllers/....
Line Number: 621
Backtrace:
File: /home/....
Line: 621
Function: _error_handler
File: /home/..../index.php
Line: 315
Function: require_once
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 3
Filename: controllers/...
Line Number: 622
Backtrace:
File: /home/...
Line: 622
Function: _error_handler
File: /home/.../index.php
Line: 315
Function: require_once
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 4
Filename: controllers/...
Line Number: 620
Backtrace:
File: /home/...
Line: 620
Function: _error_handler
File: /home/.../index.php
Line: 315
Function: require_once
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 4
Filename: controllers/...
Line Number: 621
Backtrace:
File: /home/...
Line: 621
Function: _error_handler
File: /home/.../index.php
Line: 315
Function: require_once
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 4
Filename: controllers/...
Line Number: 622
Backtrace:
File: /home/...
Line: 622
Function: _error_handler
File: /home/.../index.php
Line: 315
Function: require_once
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 5
Filename: controllers/...
Line Number: 618
Backtrace:
File: /home/...
Line: 618
Function: _error_handler
File: /home/.../index.php
Line: 315
Function: require_once
......
谢谢您最好的问候
控制器代码:-
for($x = 0; $x < sizeof($birds); $x++){
$reslt[$x] = array(
"birds" => $birds[$x],
"qtt" => $qtt[$x],
"red" => $red[$x],
"blue" => $blue[$x],
"grey" => $grey[$x],
"yellow" => $yellow[$x],
"dark" => $dark[$x]
);
}
$this->db->update_batch('db_birds', $reslt, 'birds');
更改在您的视图代码中:-
<?php
//sql Query.
//execute Query.
$ii=0;
foreach($dps as $dp){
$iii = $ii++;
<tr>
<td><input type="hidden" name="birds[<?php echo $iii;?>]" value='<?php echo $dp['birds']; ?>' /><?php echo $dp['birds']; ?></td>
<td><p align='center'><input type="text" name="qtt[]" value='<?php echo $dp['qtt']; ?>' tabindex="2" style="width:30px;" /></td>
<td><p align='center'><input type="checkbox" name="red[<?php echo $iii;?>]" value='1' <?php if($dp['red']==1) { echo " checked=\"checked\""; } ?> /></td>
<td><p align='center'><input type="checkbox" name="blue[<?php echo $iii;?>]" value='1' <?php if($dp['blue']==1) { echo " checked=\"checked\""; } ?> /></td>
<td><p align='center'><input type="checkbox" name="grey[<?php echo $iii;?>]" value='1' <?php if($dp['grey']==1) { echo " checked=\"checked\""; } ?> /></td>
<td><p align='center'><input type="checkbox" name="yellow[<?php echo $iii;?>]" value='1' <?php if($dp['yellow']==1) { echo " checked=\"checked\""; } ?> /></td>
<td><p align='center'><input type="checkbox" name="dark[<?php echo $iii;?>]" value='1' <?php if($dp['dark']==1) { echo " checked=\"checked\""; } ?> /></td>
</tr>
}
?>
问题内容: 我有一个dao,它基本上使用hibernate将记录插入到一个表中,该dao用标记为注释,并且我有一个服务,该服务会生成其他一些东西,然后调用我的dao。我的服务也标注了使用。 我叫服务循环。我在dao上的插入内容是否可以批量或一个接一个地工作?我如何确定它们可以批量工作?hibernateTransaction Manager是否管理批处理插入? 我正在使用Oracle DB。
本文向大家介绍使用AngularJS处理单选框和复选框的简单方法,包括了使用AngularJS处理单选框和复选框的简单方法的使用技巧和注意事项,需要的朋友参考一下 AngularJS对表单的处理相当简单。在AngularJS使用双向数据绑定方式进行表单验证的时候,实质上它在帮我们进行表单处理。 使用复选框的的例子有很多,同时我们对它们的处理方式也有很多。这篇文章中我们将看一看把复选框和单选按钮同数
本文向大家介绍Spring batch批处理框架,包括了Spring batch批处理框架的使用技巧和注意事项,需要的朋友参考一下 spring batch框架的简介 批处理任务是大多数IT项目的一个重要组成部分,批处理在业务系统中负责处理海量的数据,无须人工干预就能够自动高效的进行复杂的数据分析和处理。批处理会定期读入批量数据,经过相应的业务处理进行归档的业务操作,批处理的特征是自动执行,处理的
反正可以禁用SQL,我只是想测试我的读写器和处理器工作正常。
我有如下复选框: 控制器中: 当复选框值为1,然后我可以编辑,但当复选框值为0,然后我得到错误:SQLSTATE[01000]:警告: 1265数据截断为列类型在行1(SQL:更新set=0,。=2021-10-10 15:48:36其中=1) 数据库表中字段的类型-enum('0','1')
问题内容: 对于Java-JDBC API和Oracle数据库,我有一个稍微独特的要求。我将autoCommit设置为默认值,这对于Oracle是正确的,并且我使用的示例与此链接相似。 但是,当我添加说1000批次时,可以说每个批次都是插入的。并且让我们假设大约20条记录违反了某些约束,我希望其余980条变为COMMITTED(并且以后对使用任何其他连接的任何其他查询都可见)到数据库,并忽略20条