如何在邮件表中为用户所在的每个 user.ID 插入表条目。MM_Division = 除法.除法
我想在消息中插入用户 ID 值。消息用户ID
我想我需要一个 while 循环,但我不确定在处理插入查询时如何实现它。
目前,只有 1 个消息行插入到消息用户 id 值作为 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;
}
将
message users division archived
部分括为:
while (($row_users = mysql_fetch_assoc($users)) !== false) {
$messageInsert = ...
[...]
}
然后,您需要删除之前使用$row_users = mysql_fetch_assoc($users)
。
顺便说一句,我不确定如果某些列在$query_users =
行中具有相同的名称(来自用户和部门(,它们是否会被覆盖。此外,该行在函数中GetSQLValueString()
参数$colname_users
错误(不应该$colname_division
吗?还是你在别的地方宣布?