我有一个将数据插入db表中的表格,要求我从select的选项中隐藏所有已使用的类别。
查询:
$insertSQL = sprintf(
"INSERT INTO Cat_documenti (codice_cat_doc, titolo_cat_doc, desc_cat_doc, id_struttura) VALUES (%s, %s, %s, %s)",
GetSQLValueString($_POST['cod_cat'], "text"),
GetSQLValueString(inputControl(docUpdate(strtoupper($_POST['titolo_cat']))), "text"),
GetSQLValueString(inputControl($_POST['desc_cat']), "text"),
GetSQLValueString($id_az, "int")
);
//dwthai.com($database_riskmanagement, $riskmanagement);
$Result1 = mysqli_query($riskmanagement, $insertSQL) or die(mysqli_error($riskmanagement));
$id_inserito = mysqli_insert_id();
createLog($_COOKIE['cod_operatore'], $insertSQL, $id_inserito);
如何在php中隐藏结果?
数据库中的值是:cod_cat
html:
<select name="cod_cat" id="cod_cat" class="form-control m-bot15" required>
<option value="">Selezionare</option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
<option value="D">D</option>
<option value="E">E</option>
<option value="F">F</option>
<option value="G">G</option>
<option value="H">H</option>
<option value="I">I</option>
<option value="J">J</option>
<option value="K">K</option>
<option value="L">L</option>
<option value="M">M</option>
<option value="N">N</option>
<option value="O">O</option>
<option value="P">P</option>
<option value="Q">Q</option>
<option value="R">R</option>
<option value="S">S</option>
<option value="T">T</option>
<option value="U">U</option>
<option value="V">V</option>
<option value="W">W</option>
<option value="X">X</option>
<option value="Y">Y</option>
<option value="Z">Z</option>
</select>
我知道一种实现它控制变量的可能性,但是我不知道隐藏值
示例:
$CONTROLLA = mysqli_query($VARIABLE_OF_MY_CONNECTION,"SELECT VALUE FROM TABLE WHERE CONDITION");
$SE_IL_RISULTATO_IMMESSO=mysqli_num_rows($CONTROLLA);
if($SE_IL_RISULTATO_IMMESSO==0) {
$connessione->query("INSERT INTO TABLE ……”);
$POSITIVE_MESSAGE = ‘ECHO WHAT YOU WANT’;
}
答案 0 :(得分:1)
我已经检查了您的问题。请检查以下代码并实现
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "mydb";
$conn = mysqli_connect($servername, $username, $password, $dbname);
$sql = "SELECT category from categories group by category";
$result = mysqli_query($conn, $sql);
$selected = array();
while($row = mysqli_fetch_assoc($result)) {
$selected[] = $row['category'];
}
echo '<select>';
foreach(range('A', 'Z') as $letter) {
if(!in_array($letter, $selected)){
echo '<option value="'.$letter.'">'.$letter.'</option>';
}
}
echo '</select>';
答案 1 :(得分:0)
由于您无法使用PHP编辑现有的html代码,因此您可以使用PHP输出一些Javascript代码,从而删除已使用的选项,或者仅显示未使用的PHP选项。因此,您将执行以下操作:
<!-- Your HTML code -->
<?php
//Do your database query, if requested
?>
<!-- Build the select element: -->
<select name="cod_cat" id="cod_cat" class="form-control m-bot15" required>
<option value="">Selezionare</option>
<?php
//Here you would display the available options like this:
echo "<option value="A">A</option>";
...
//The selected values will be in the variable $_POST['cod_cat']
//So, you need to iterate over all your values (A-Z) and remove the values in $_POST['cod_cat']
foreach(range('A', 'Z') as $letter) {
if(!in_array($letter, $_POST['cod_cat'])){
echo '<option value="'.$letter.'">'.$letter.'</option>';
}
}
?>
</select>
<!-- Your HTML code -->