现在我有2张桌子。评论表和用户表。简短,我想向所有用户发送评论。我需要知道它的sql命令以及如何在PHP上显示。
评论表
- pk
- 评论
- 发件人(指用户名)
- 接收者(指用户名)
醇>
用户表
- PK
- 用户名
- 等.....
醇>
我试过用这个:
$provider = $_REQUEST['provider'];
$cert = $_REQUEST['cert'];
$valid = $_REQUEST['valid'];
$lprice = $_REQUEST['lprice'];
$trial = $_REQUEST['trial'];
$cost = $_REQUEST['cost'];
echo $cert;
$sql=mysql_query("SELECT * FROM sslcert WHERE CertificateName='$cert'",$connect);
if(mysql_num_rows($sql)>0)
{
echo"SSL already exists.";
echo "<br><a href=addssl.php>Back</a>";
}
else
{
$insert = mysql_query("INSERT INTO sslcert (Provider, CertificateName, Validation,
ListPrice, Trial, Cost) VALUES ('$provider', '$cert', '$valid', '$lprice',
'$trial', '$cost')",$connect);
$result77=mysql_query("SELECT username FROM user");
while($row77=mysql_fetch_array($result77))
{
$insert1 = mysql_query("INSERT INTO notification (msg, sender, receiver, notification) VALUES ('A new product is now available, $cert by $provider', '$username', '$row77['username']', 1)");
if(!$insert1){
die("There's little problem: ".mysql_error());
echo "<br><a href=quotesmanage1.php>Back</a>";
}
}
if(!$insert){
die("There's little problem: ".mysql_error());
echo "<br><a href=addssl.php>Back</a>";
}
echo "<br>You have add a new Product <br><a href=adminhome.php>Back to Home</a>";
}
mysql_close($connect);
}
用户名的调用是在页面上的其他位置。 它出现了一个空白页面(php上的错误),任何想法?
答案 0 :(得分:0)
我相信你想要一个INSERT ... SELECT查询。
INSERT INTO `Comment`(`Comment`.`comment`, `Comment`.`sender`, `Comment`.`receiver`) SELECT 'Message as text or variable substitution', `User`.`pk`, '1' FROM `User`
您可以在SELECT行的末尾替换任何ID而不是1,我只是认为您的管理用户可能是1(但您可以创建一个新用户来发送这些群发消息,并使用任何数字ID对应。< / p>
顺便说一下,在你的评论表中你应该引用User.pk,而不是User.username。这就是为什么你首先拥有密钥的原因: - )