不能从数据库中排序多个表数据


Cant sort multiple table data from database?

我在排序列"cena"(eng: price)的数据时遇到了一些问题。

我制作的网站有多种语言,我为每种语言制作了3个表,如en_slike, ger_slike(塞尔维亚语,英语,德语),我想在一个页面中显示,我可以按价格(cena)和日期(slike_id)排序数据,当我运行页面时,一切都很好,但是当我尝试按cena(价格)排序图片时什么也不会发生,为什么?

这是在作品之前:

下面是图片选择函数的代码,这个函数在Manage类中:

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>';
            }
        }   
    }

这是body 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>

尝试这样做,order by应该是所有union的end

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>';
}
}   
}