我试图从数据库中选择选定的值,但由于某种原因它不起作用。 我不知道我需要改变什么,我使用函数在数据库中存储文章,我使用相同的函数来获取在数据库中选择的文章。 功能artikli:
function article() {
$link = new mysqli("localhost", "xxx", "xxx", "xxx");
$link->set_charset("utf8");
$sql=mysqli_query($link, "SELECT * FROM `artikli` ORDER BY `Id` ASC ");
echo '<option value="">Select article: </option>';
while($record=mysqli_fetch_array($sql)){
echo '<option value= "' .$record['Id']. '">' . $record['ArtCode'] ."-|-". $record['ArtName'] . ' </option>';
}
}
在插入表单中,此功能可以工作并插入文章。现在,在编辑表单中,我想要一篇插入的文章。 首先,我从另一个表中检索文章,然后获得价值。
$article = $r['ArtPalArticle'];
我得到了前任。值18.所有值都是整数。
$article = 18;
<div class="col-xs-12">
<label>Article</label>
<select class="form-control" name="article" value = "<?php echo $article; selected?>">
<option value=<?php echo $article?> selected></option>
<?php article(); ?>
</select>
</div>
任何人都可以给我提示,我是否需要更改功能或者我错过了以下代码功能。对我来说,保持功能相同并在选择部分
中更改下面的代码会更好答案 0 :(得分:1)
您需要在函数中比较id
和插入的id
。你可以试试这个 -
function article($articleId = null) {
$link = new mysqli("localhost", "xxx", "xxx", "xxx");
$link->set_charset("utf8");
$sql=mysqli_query($link, "SELECT * FROM `artikli` ORDER BY `Id` ASC ");
echo '<option value="">Select article: </option>';
while($record=mysqli_fetch_array($sql)){
echo '<option value= "' .$record['Id']. '" ' . ((!empty($articleId) && $articleId == $record['Id']) ? 'selected' : '' ) . '>' . $record['ArtCode'] ."-|-". $record['ArtName'] . ' </option>';
}
}
和HTML
<div class="col-xs-12">
<label>Article</label>
<select class="form-control" name="article">
<?php
if(!empty($article)) { // at the time of edit
article($article);
} else {
article();
}
?>
</select>
</div>
答案 1 :(得分:0)
<?php
function article( $article_id='' )
{
$link = new mysqli("localhost", "xxx", "xxx", "xxx");
$link->set_charset("utf8");
$sql=mysqli_query($link, "SELECT * FROM `artikli` ORDER BY `Id` ASC ");
echo '<option value="">Select article: </option>';
while($record=mysqli_fetch_array($sql))
{
if( !empty($article_id) )
{
if( $record['Id'] == $article_id )
echo '<option value= "' .$record['Id']. '" selected>' . $record['ArtCode'] ."-|-". $record['ArtName'] . ' </option>';
else
echo '<option value= "' .$record['Id']. '">' . $record['ArtCode'] ."-|-". $record['ArtName'] . ' </option>';
}
else
{
echo '<option value= "' .$record['Id']. '">' . $record['ArtCode'] ."-|-". $record['ArtName'] . ' </option>';
}
}
}
?>
<div class="col-xs-12">
<label>Article</label>
<select class="form-control" name="article" id="article">
<?php article( $article ); ?>
</select>
</div>