几周来我一直在研究这个主题。我正在创建一个从 MsSQL 服务器中提取信息的网页。我的问题是有几个复选框的部分。 如果在 SQL 数据库中找到这些复选框,则假设它们已被选中。 如果借款人使用“储蓄”、“支票”和“股票”中的钱,则应在 HTML 页面中选中这些复选框。在我的例子中,它只检查 SQL 搜索列表第一行中的任何内容。因此,如果列表的第一行有“正在保存”,则只会选中“正在保存”复选框,而不会选中列表中的其他复选框。我尝试使用循环 (while($r->EOF)),但随后它会选择列表末尾的任何内容。这是我用来从 SQL 服务器中提取数据的方法。预先感谢您的帮助。真的很感激!
function __construct($_ldid, $_lrid)
$this->ldid = $_ldid;
$this->lrid = $_lrid;
//$loan is defined in the PHP.class (which is shown below).
$q = ("SELECT * FROM Tabel_name where loan_id = 885775")
$v = array($_ldid, $_lrid);
$r = $db->Execute($q, $v);
$this->downpaymenttype = $r->fields; //<- I think I have this line done wrong because it is suppose to store the outputs to an array.
//So wherever the "$loan" is in HTML page, it will take the outputs from the above statement.
//The above code, which is in PHP.class file, outputs the following(or suppose to):
1 885775 Checking
2 885775 Saving
3 885775 Gift
在 HTML 网页中,以下代码应根据输出勾选框:
<input type="checkbox" name="DPS1[]" id="DPS1-{$key}" {if $loan-> downpaymenttype.downpaymentsource == "Checking"} checked {/if}/>
<input type="checkbox" name="DPS2[]" id="DPS2-{$key}" {if $loan-> downpaymenttype.downpaymentsource == "Saving"} checked {/if}/>
<input type="checkbox" name="DPS3[]" id="DPS3-{$key}" {if $loan-> downpaymenttype.downpaymentsource == "Gift"} checked {/if}/>
只有“正在检查”复选框被选中,因为它位于第一行。
我也试过循环,但它没有存储在数组中(我想我不知道如何使用数组进行 session )
$q = ("SELECT Tabel_name FROM loan_downpaymentsource where loan_id = 885775");
$v = array($_ldid, $_lrid));
$r = $db->Execute($q, $v);
while(!$r->EOF) {
$this->downpaymenttype = $r->fields;
$r->MoveNext();
}
最佳答案
在显示和设置标志之前添加一个循环来检查您的结果。 $r->fields 只会获取当前行的字段。您需要遍历整个行集以查看是否设置了其他行集。
类似的东西(看起来你正在使用 adodb 或类似的东西)
$checking = false;
$saving = false;
$gift = false;
while(!$r->EOF){
$row = $r->fields;
switch($row->downpaymenttype){
case 'Checking':
$checking=true;
break;
case 'Saving':
$saving=true;
break;
case 'Gift':
$gift=true;
break;
default:
break;
}
$r->moveNext();
}
现在在您的 View 中检查标志。我没有使用过 smarty,但你必须将这些标志传递给你的模板,我相信你知道,然后更改你的复选框行以检查每个标志是否为真/假。
希望对您有所帮助!
关于PHP + MsSQL = 复选框问题。需要帮忙!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4596383/