2012-05-21 14 views
0

如何插入每個user.ID在我的郵件表的表條目,其中users.MM_Division = division.divisionid插入用戶ID值到消息表,其中用戶劃分= division.divisionid

我想插入在messages.messagesuserid

我認爲我需要一個while循環,但我不知道如何處理插入查詢時如何實現它。

目前,只有1條消息行插入消息表上messageuserid值帖子爲NULL

感謝

這裏是我的代碼:

session_start(); 

$colname_division = "-1"; 
if ((isset($_GET['divisionid'])) && ($_GET['divisionid'] != "")) { 
     $colname_division = $_GET['divisionid']; 

mysql_select_db($database_connect, $connect); 
$query_users = sprintf("SELECT users.*, division.* FROM users INNER JOIN division ON division.divisionid = users.MM_Division WHERE divisionid = %s", GetSQLValueString($colname_users, "int")); 
$users = mysql_query($query_users, $connect) or die(mysql_error()); 
$row_users = mysql_fetch_assoc($users); 
$totalRows_users = mysql_num_rows($users); 


// MESSAGE USERS DIVISION ARCHIVED 
    $messageinsertSQL = sprintf("INSERT INTO messages (message, messageuserid) VALUES ('The division " . $row_division['division'] . " has been archived by " . $_SESSION['MM_Username'] . " please select a new division', '" . $row_users['ID'] . "')",GetSQLValueString($_GET['divisionid'], "int")); 
    mysql_select_db($database_connect, $connect); 
    $Result4 = mysql_query($messageinsertSQL, $connect) or die(mysql_error()); 


// REDIRECT 
    $updateGoTo = "../divisions.php"; 
     if (isset($_SERVER['QUERY_STRING'])) { 
      $updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?"; 
      $updateGoTo .= $_SERVER['QUERY_STRING']; 
     } 
    header(sprintf("Location: %s", $updateGoTo)); 

    mysql_free_result($division); 
    exit; 
} 

回答

0

換行message users division archived部分有:

while (($row_users = mysql_fetch_assoc($users)) !== false) { 
$messageInsert = ... 
[...] 
} 

然後你需要刪除0123早先使用的。

順便說一句,我不知道如果某些列在$query_users =行中具有相同的名稱(來自用戶和部門),則不會被覆蓋。 此外,該行有錯誤的參數$colname_usersGetSQLValueString()函數(不應該是$colname_division?或者你是否聲明它在別的地方?)。

+0

謝謝你正在尋找的東西 – onebitrocket