2012-01-04 66 views
0

我試圖插入一些數據到一個表,然後成功,我想從我的另一個表中的一個字段得到更新。我的代碼如下:將不同的數據插入兩個表

<?php 

$room = $_REQUEST['room']; 
$date = $_REQUEST['date']; 
$time = $_REQUEST['time']; 
$id = $_GET['meeting_id']; 

$con = mysql_connect("******","****","****"); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

mysql_select_db('mdb_hj942', $con); 

$sql="INSERT INTO Rooms (room, date, time, meeting_id) VALUES ('$room','$date', '$time','$id')"; 
$sql2="UPDATE Meetings SET action = 'success'"; 

if (!mysql_query($sql,$con,$sql2)) 
    { 
     die('Error: ' . mysql_error()); 
    } 
    else 
    { 
     echo '<h2>Room & Time Has Now Been Updated</h2>'; 

    } 
?> 

這是possbile?如果是這樣,什麼樣的變化讓我的,因爲我得到以下錯誤信息:

'Warning: Wrong parameter count for mysql_query() in E:\webareas\hj942\conference\Secretary\bookedsuccessfully.php on line 80 
Error: ' 
+0

'UPDATE Meetings'語句將更新表'Meetings'中的** ALL **行。你確定你想要嗎?也許你想要'$ sql2 =「更新會議SET行動='成功'WHERE meeting_id ='$ id'」;' – 2012-01-04 23:21:00

回答

1
if (!mysql_query($sql, $con)){ 
    die('Error: ' . mysql_error()); 
} else { 
    if (!mysql_query($sql2, $con)){ 
    die('Error: ' . mysql_error()); 
    } else { 
    echo '<h2>Room & Time Has Now Been Updated</h2>'; 
    } 
} 
+0

輝煌的安納,歡呼聲 – user1114080 2012-01-04 22:22:31

0

的mysql_query不支持多個查詢。你將不得不把你的數據庫訪問分成兩個獨立的調用。

從php.net:

資源的mysql_query(字符串$查詢[,資源$ link_identifier])

的mysql_query()發送一個唯一的查詢(多個查詢不支持),以當前活動數據庫與指定的link_identifier關聯的服務器。

0

您需要分別執行每個查詢。像這樣的東西

$sql="INSERT INTO Rooms (room, date, time, meeting_id) VALUES ('$room','$date', '$time','$id')"; 
if (!mysql_query($sql,$con)) 
{ 
    die('Error: ' . mysql_error()); 
} 
$sql2="UPDATE Meetings SET action = 'success'"; 

if (!mysql_query($sql2,$con)) 
{ 
    die('Error: ' . mysql_error()); 
} 

但是,請在你走之前,去閱讀關於SQL注入(搜索「SQL注入」)。您的代碼依然非常容易受到SQL注入攻擊。你可能也想看看PHP的PDO功能,讓生活更輕鬆。

0

你不能給的mysql_query一次兩個查詢:

資源的mysql_query(字符串$查詢[,資源$ link_identifier])

mysql_query() sends a unique query (multiple queries are not supported) to the 
currently active database on the server that's associated 
with the specified link_identifier 

see here

試試這個:

$sql="INSERT INTO Rooms (room, date, time, meeting_id) VALUES ('$room','$date', '$time','$id')"; 
     $sql2="UPDATE Meetings SET action = 'success'"; 
     if (mysql_query($sql,$con)) // will return true if succefull else it will return false 
      { 
       if(mysql_query($sql2, $con)){ //$sql2 succeeded 
        echo '<h2>Room & Time Has Now Been Updated</h2>'; 
       } 
      } 
相關問題