PHP基于数据库值禁用输入文本字段
我有一个包含多个输入的公司表(数据库),如果另一个字段中有某个值,我需要禁用一个输入字段 例如: 我的输入字段:PHP基于数据库值禁用输入文本字段,php,input,field,disable,Php,Input,Field,Disable,我有一个包含多个输入的公司表(数据库),如果另一个字段中有某个值,我需要禁用一个输入字段 例如: 我的输入字段: <td><input type=text name=invoice list=invoice maxlength=10 value= " . $row[ "invoice" ] . "></td> 如果发票不为空或存在特定文本,我需要禁用第二个输入字段amstaff: <td><input type=text name=am
<td><input type=text name=invoice list=invoice maxlength=10 value= " . $row[ "invoice" ] . "></td>
如果发票不为空或存在特定文本,我需要禁用第二个输入字段amstaff:
<td><input type=text name=amstaff list=amstaff maxlength=30 value=" . $row[ "amstaff" ] . "></td>
它都是在PHP代码中插入的,所以javascript或jQuery在这里不起作用,我已经在这个论坛或其他地方尝试了很多东西,但都不适合我
请提供关于如何禁用该输入字段以使其无法再更改的任何建议?如果使用php输入字段invoice不为空,则为On条件
此外,由于这些输入字段位于echo内,因此echo功能不起作用,这是我代码的一部分:
// output data of each row
while ( $row = $result->fetch_assoc() ) {
echo
"<tr bgcolor='".getcolour($row['status'])."'> <form class=upwo method=post action=update.php>
<td>" . $row[ "id" ] . "</td>
<input type=hidden name=id value= " . $row[ "id" ] . ">
<td class='descrow'>" . $row[ "descr" ] . "</td>
<td>" . $row[ "part" ] . "</td>
<td>" . $row[ "cust" ] . "</td>
<td>" . $row[ "acreg" ] . "</td>
<td>" . $row[ "cat" ] . "</td>
<td>" . date('d M yy', strtotime($row[ "issue" ])) . "</td>
<td>" . date('d M yy', strtotime($row[ "clousure" ])) . "</td>
<td><input type=text name=amstaff list=amstaff maxlength=30 value=" . $row[ "amstaff" ] . "></td>
<datalist id=exstaff>
<option value=Peter Majo></option>
<option value=Dano Adamek></option>
<option value=Rado Janousek></option>
<option value=Niko Ivanics></option>
<option value=Marian Polacik></option>
<option value=Dusan Duben></option>
</datalist>
<td><input type=time name=amtime maxlength=8 value= " . $row[ "amtime" ] . "></td>
<td><input type=text name=exstaff list=exstaff maxlength=30 disabled value= " . $row[ "exstaff" ] . "></td>
<datalist id=exstaff>
<option value=Peter Majo></option>
<option value=Dano Adamek></option>
<option value=Rado Janousek></option>
<option value=Niko Ivanics></option>
<option value=Marian Polacik></option>
<option value=Dusan Duben></option>
</datalist>
<td><input type=time name=extime maxlength=8 value= " . $row[ "extime" ] . "></td>
<td>" . $row[ "summ" ] . "</td>
<td><input type=text name=form maxlength=20 required value= " . $row[ "form" ] . "></td>
<td><input type=text name=invoice list=invoice maxlength=10 required value= " . $row[ "invoice" ] . "></td>
<datalist id=invoice>
<option value=JAN></option>
<option value=FEB></option>
<option value=MAR></option>
<option value=APR></option>
<option value=MAY></option>
<option value=JUN></option>
<option value=JUL></option>
<option value=AUG></option>
<option value=SEP></option>
<option value=OCT></option>
<option value=NOV></option>
<option value=DEC></option>
</datalist>
<td>" . $row[ "status" ] . "</td>
<td><input type=submit value=Update></td>
</form></tr>";
}
echo "</table>";
} else {
echo "0 results";
}
$conn->close();
?>
//每行的输出数据
而($row=$result->fetch_assoc()){
回声
"
“$row[“id”]”
“$row[“descr”]”
“$行[“部分”]”
“$row[“cust”]”
“$row[“acreg”]”
“$row[“cat”]”
.date('d M yy',strottime($row[“issue”])
.date('d M yy',strottime($row[“clousure”])
“$row[“summ”]”
“$行[“状态”]”
";
}
回声“;
}否则{
回显“0结果”;
}
$conn->close();
?>
首先通过回显php变量而不是所有html来简化代码:您可以这样做:
while ( $row = $result->fetch_assoc() ) {
?>
<tr bgcolor="<?php echo getcolour($row['status']); ?>"><form class=upwo method=post action=update.php>
while($row=$result->fetch_assoc()){
?>
为了更好地了解我的问题,这里有我的测试网站:www.part21.tech
<td><input type=text name=amstaff list=amstaff maxlength=30
<?php if($row[ "invoice" ]==""|$row[ "invoice" ]="some_text_here"){
echo " disabled ";
}else{
echo " ";
}
?>
value="<?php echo $row[ "amstaff" ] ?>"></td>