PHP 禁用基于数据库值的输入文本字段
PHP Disable INPUT text field based on database value
我有一家公司table(数据库)有多个输入,如果另一个字段中有特定值,我需要禁用一个输入字段,
例如:
我的输入字段:
<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.
输入字段发票不为空
回声功能也不起作用,因为这些输入字段在回声内,这是我的代码的一部分:
// 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();
?>
首先通过回显 php 变量而不是所有 html 来简化您的代码:您可以这样做:
while ( $row = $result->fetch_assoc() ) {
?>
<tr bgcolor="<?php echo getcolour($row['status']); ?>"><form class=upwo method=post action=update.php>
等等。
然后,来解决你的问题(在你像上面那样修复回声部分之后):
<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>
就是您要找的东西
我有一家公司table(数据库)有多个输入,如果另一个字段中有特定值,我需要禁用一个输入字段,
例如:
我的输入字段:
<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.
输入字段发票不为空回声功能也不起作用,因为这些输入字段在回声内,这是我的代码的一部分:
// 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();
?>
首先通过回显 php 变量而不是所有 html 来简化您的代码:您可以这样做:
while ( $row = $result->fetch_assoc() ) {
?>
<tr bgcolor="<?php echo getcolour($row['status']); ?>"><form class=upwo method=post action=update.php>
等等。
然后,来解决你的问题(在你像上面那样修复回声部分之后):
<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>
就是您要找的东西