2013-05-10 36 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

相关问题