pdo php多选查询与选择菜单

时间:2017-04-24 10:00:37

标签: php sql pdo

我制作了填充的selectmenu来对我的sql数据库进行查询。所有选择菜单的第一个选项标签都有value=""现在当我使用2个selectmenu时,一切正常。但如果我想使用更多(在我的情况下为48),它就会变得相当复杂。有更简单的方法吗?

两个页面的例子:

 <select name="titel" id="titel" value="">
 <option value="">Selecteer</option>
 <?php
 if($rowCount > 0){
    while($row = $query->fetch_assoc()){ 
        echo '<option  value="'.$row['titel'].'">'.$row['titel'].'</option>';
    }
 }else{
    echo '<option value="">Language not available</option>';
 }
 ?>
 </select>

第2页:

loginscript等:

$sql = "SELECT DISTINCT * FROM Library";

if( (isset($_POST['titel']) && $_POST['titel'] != '') ) {    
$sql .= " where titel =:titel";

if ( (isset($_POST['version']) && $_POST['version'] != '') ) {    
$sql .= " AND version =:version"; 
   }    
 } 

if ( (isset($_POST['version']) && $_POST['version'] != '') && !   (isset($_POST['titel']) && $_POST['titel'] != '') ) {    
$sql .= " where version =:version"; 
 }

$query = $pdo->prepare($sql);    

 if( (isset($_POST['titel']) && $_POST['titel'] != '') ) {
 $query->bindParam(':titel', $_POST['titel']);
 }

 if( (isset($_POST['version']) && $_POST['version'] != '') ) {
 $query->bindParam(':version', $_POST['version']);
 }

 $query->execute();

0 个答案:

没有答案