2012-01-04 27 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>'; 
       } 
      } 
相关问题