2013-05-30 78 views
0

使用查詢超過4個查詢獲取數據庫四個查詢運行正常,但我使用一個更多的查詢獲取hotel_id和此hotel_id使用不同的查詢,但是當我運行查詢,查詢運行正常,但沒有在while循環中得到輸出,代碼中我的錯誤是什麼.....這個查詢正常工作,但$ query1 =「select menu_master where menu_id =」。 ID;但在$ hid = $ row ['hotel_id']; 。不能存儲在$任何價值藏..使用mysql查詢獲取數據庫中的數據在php

$query1 = "select hotel_id from menu_master where menu_id=".$id; 
        $res = mysql_query($query1); 
        while($row=mysql_fetch_array($res)) 
        { 
         $hid = $row['hotel_id']; 
        } 

        $query = "select set_rank from menu_master where menu_id = $row_id and hotel_id='".$_REQUEST['hotel_id']."'"; 
        //echo $query."<br/>"; 
        $result = mysql_query($query); 

        while($row=mysql_fetch_array($result)) 
        { 
         $current_rank = $row['set_rank']; 
        } 

        $current_id = $row_id; 
        $new_rank =$_REQUEST['set_rank']; 

        $sql = "select * from menu_master where set_rank = '$new_rank ' and hotel_id='".$_REQUEST['hotel_id']."'" ;  
        $rs = mysql_query($sql); 

        while($row = mysql_fetch_array($rs)) 
         { 
           $menu_id = $row['menu_id']; 
           $sql="update menu_master 
           set set_rank=$current_rank where menu_id= $menu_id and hotel_id='".$_REQUEST['hotel_id']."'"; 

           mysql_query($sql); 

         } 

            $sql="update menu_master set 
            hotel_id   = '".mysql_real_escape_string($_REQUEST['hotel_id'])."', 
            menu_name   = '".mysql_real_escape_string($_REQUEST['menu_name'])."', 
            menu_name_ar  = '".mysql_real_escape_string($_REQUEST['menu_name_ar'])."', 
            is_active   = '".$is_active."', 
            set_rank=$new_rank where menu_id= '$current_id' and hotel_id='".$_REQUEST['hotel_id']."'"; 
            mysql_query($sql); 
       } 
+2

[不要使用mysql_ *擴展名](http://www.php.net/en/mysql_query),因爲它們已被棄用。改爲使用[PDO](http://php.net/manual/en/book.pdo.php)或[MSQLi](http://php.net/manual/en/book.mysqli.php)。 –

+0

你如何查詢正常工作?你在SQL中測試過它嗎?它是否檢索結果,但不是在代碼中? –

+0

Ivo Pereira 從menu_master中選擇hotel_id其中menu_id =「。$ id;在此查詢中獲取hotel_id但我使用while循環沒有得到表 – user2436007

回答

0

試試這個代碼

$query1 = "select hotel_id from menu_master where menu_id=".$id; 
$row = mysql_fetch_array(mysql_query($query1)); 
$hid = $row['hotel_id']; 
+0

的輸出我試着這段代碼沒有得到輸出.. – user2436007

0

$ QUERY1 = $ id爲 「從哪裏menu_master = menu_id HOTEL_ID選擇」;

   $res = mysql_query($query1); 

       while($row1=mysql_fetch_array($res)) 
       { 


        $hid = $row1['hotel_id']; 

       $query = "select set_rank from menu_master where menu_id = $row_id and hotel_id='".$hid."'"; 
       //echo $query."<br/>"; 
       $result = mysql_query($query); 

       while($row=mysql_fetch_array($result)) 
       { 
        $current_rank = $row['set_rank']; 
       } 

       $current_id = $row_id; 
       $new_rank =$_REQUEST['set_rank']; 

       $sql = "select * from menu_master where set_rank = '$new_rank ' and hotel_id='".$hid."'" ;  
       $rs = mysql_query($sql); 

       while($row = mysql_fetch_array($rs)) 
        { 
          $menu_id = $row['menu_id']; 
          $sql="update menu_master 
          set set_rank=$current_rank where menu_id= $menu_id and hotel_id='".$hid."'"; 

          mysql_query($sql); 

        } 

           $sql="update menu_master set 
           hotel_id   = '".mysql_real_escape_string($_REQUEST['hotel_id'])."', 
           menu_name   = '".mysql_real_escape_string($_REQUEST['menu_name'])."', 
           menu_name_ar  = '".mysql_real_escape_string($_REQUEST['menu_name_ar'])."', 
           is_active   = '".$is_active."', 
           set_rank=$new_rank where menu_id= '$current_id' and hotel_id='".$hid."'"; 
           mysql_query($sql); 
      } 
+0

$ hid value得到空的理由不工作的所有查詢... – user2436007