2013-05-10 56 views
1

我對列「cena」(eng:price)中的數據進行排序時遇到了一些問題。 (塞爾維亞語,英語,德語),我想顯示,在一個頁面,我可以按價格(cena)排序數據,我做了多種語言的網站,我爲每種語言slike,en_slike,ger_slike和日期(slike_id),當我運行頁面時,一切都很好,但是當我嘗試按照cena(價格)對圖片進行排序時,什麼都沒有發生,爲什麼?無法對數據庫中的多個表數據進行排序?

這是工作前:

這裏是照片選擇功能代碼,這個函數是在類管理:

public static function Select_Slike(){ 
     if(isset($_POST['btnsort'])) 
     { 
      if(isset($_POST['sort'])) 
      { 
       if($_POST['sort']=="cena") 
       { 
        $query = "(select * from slike order by cena desc) 
         union all 
         (select * from en_slike order by cena desc) 
         union all 
         (select * from ger_slike order by cena desc) 
         "; 

        $rez = mysql_query($query); 
        while($row = mysql_fetch_array($rez)) 
        { 
         echo '<div id="block1"><h5 id="naslov">'.$row['naslov'].'</h5><h5 id="cena">'.$row['cena'].'</h5><img src="images/'.$row['string'].'.jpg" class="slike"/><h5 id="materijal">'.$row['materijal'].'</h5><h5 id="dimenzije">'.$row['dimenzije'].'</h5></div>'; 
        } 
       } 
       else 
       { 
        $query = "(select * from slike order by slike_id desc) 
           union all 
           (select * from en_slike order by slike_id desc) 
           union all 
           (select * from ger_slike order by slike_id desc) 
           "; 

        $rez = mysql_query($query); 
        while($row = mysql_fetch_array($rez)) 
        { 
         echo '<div id="block1"><h5 id="naslov">'.$row['naslov'].'</h5><h5 id="cena">'.$row['cena'].'</h5><img src="images/'.$row['string'].'.jpg" class="slike"/><h5 id="materijal">'.$row['materijal'].'</h5><h5 id="dimenzije">'.$row['dimenzije'].'</h5></div>'; 
        } 
       } 
      } 
     } 
     else 
     { 
      $query = "(select * from slike order by slike_id desc) 
         union all 
         (select * from en_slike order by slike_id desc) 
         union all 
         (select * from ger_slike order by slike_id desc) 
         "; 

      $rez = mysql_query($query); 

      while ($row = mysql_fetch_array($rez)) 
      { 
       echo '<div id="block1"><h5 id="naslov">'.$row['naslov'].'</h5><h5 id="cena">'.$row['cena'].'</h5><img src="images/'.$row['string'].'.jpg" class="slike"/><h5 id="materijal">'.$row['materijal'].'</h5><h5 id="dimenzije">'.$row['dimenzije'].'</h5></div>'; 
      } 
     } 
    } 

,這是身體的PHP/HTML代碼:

<body> 
    <form action="" method="post"> 
    <div id="sortiranje"> 
     <select name="sort"> 
      <option value="date">Datum</option> 
      <option value="cena">Cena</option> 
     </select><input type="submit" name="btnsort" value="sort"/> 
    </div> 
    </form> 
    <div id="slike_blok"> 
    <?php 
    try{ 
    Manage::Select_Slike(); 
    } 
    catch(Exception $e){ 
     die("<center><font size='42' color='red' weight='100'>SERVER DATABASE ERROR! ".$e->Message()."</font><center>"); 
    } 
    ?> 
    </div> 
</body> 
+0

爲什麼不添加一個語言列到你的slike表,而不是使用三個表? – 2013-05-10 14:54:56

+0

@MarkBaker對,很好的提醒我,我有一個專欄「jezik」(語言),我現在繼續這個項目3個月後,我忘了我有列omg。謝謝。 – user1814358 2013-05-10 15:15:04

回答

1

請嘗試像這樣的順序應該是所有工會結束

public static function Select_Slike(){ 
    if(isset($_POST['btnsort'])) 
    { 
     if(isset($_POST['sort'])) 
     { 
      if($_POST['sort']=="cena") 
      { 
       $query = "(select * from slike) 
       union all 
       (select * from en_slike) 
       union all 
      (select * from ger_slike) order by cena desc"; 

$rez = mysql_query($query); 
while($row = mysql_fetch_array($rez)) 
{ 
echo '<div id="block1"><h5 id="naslov">'.$row['naslov'].'</h5><h5 id="cena">'.$row['cena'].'</h5><img src="images/'.$row['string'].'.jpg" class="slike"/><h5 id="materijal">'.$row['materijal'].'</h5><h5 id="dimenzije">'.$row['dimenzije'].'</h5></div>'; 
} 
} 
else 
{ 
$query = "(select * from slike) 
union all 
(select * from en_slike) 
union all 
(select * from ger_slike) order by slike_id desc 
"; 

$rez = mysql_query($query); 
while($row = mysql_fetch_array($rez)) 
{ 
echo '<div id="block1"><h5 id="naslov">'.$row['naslov'].'</h5><h5 id="cena">'.$row['cena'].'</h5><img src="images/'.$row['string'].'.jpg" class="slike"/><h5 id="materijal">'.$row['materijal'].'</h5><h5 id="dimenzije">'.$row['dimenzije'].'</h5></div>'; 
} 
} 
} 
} 
else 
{ 
$query = "(select * from slike) 
union all 
(select * from en_slike) 
union all 
(select * from ger_slike) order by slike_id desc 
"; 

$rez = mysql_query($query); 

while ($row = mysql_fetch_array($rez)) 
{ 
echo '<div id="block1"><h5 id="naslov">'.$row['naslov'].'</h5><h5 id="cena">'.$row['cena'].'</h5><img src="images/'.$row['string'].'.jpg" class="slike"/><h5 id="materijal">'.$row['materijal'].'</h5><h5 id="dimenzije">'.$row['dimenzije'].'</h5></div>'; 
} 
} 
} 
+0

作品!非常感謝。 :) – user1814358 2013-05-10 15:03:53

相關問題