php - 如何在另一个表中抓取主键并将其放入外键? PHP, MySQL

标签 php mysql foreign-keys primary-key

这些表是具有 A_ID(主键)的帐户、用户名、密码和具有 M_ID(主键)、消息、A_ID(外键)的消息

当有人发送消息时,我使用 SELECT 语句获取此人的 A_ID,其中他们的用户名 = 他们的用户名,然后将其插入到表中。

完整代码在下面粘贴,比较乱,请见谅。我正在开发一个更简洁的版本,但我必须先获得这个重要部分。

http://pastebin.com/e3aqGerw

我真正卡住的地方就在这里 ¬

if (isset($_POST['SendMessage'])) {
    $GetAID = "SELECT A_ID FROM Accounts WHERE Username='$CookieValue'";
    $ResultAID = $Connect->query($GetAID);
    echo $ResultAID;
    $Message = htmlspecialchars($_POST['Message']);
    $MessageSQL = "INSERT INTO Messages (M_ID, Message, A_ID) VALUES ('', '$Message', '$ResultAID')";

    if ($Connect->query($MessageSQL) === TRUE) {
        echo "Message Sent<BR/>";
    } else {
        echo "Error Sending Message<BR/>";
    }
}

我的问题是如何将 A_ID 放入一个变量中,然后将其作为 FOREIGN KEY 插入到 Messages 表中到 Accounts 表的 A_ID PRIMARY KEY?

最佳答案

必须在 SQL 服务器上处理外键要求。您将需要设置一个外键约束。

插入变量很容易。

    $MessageSQL = "INSERT INTO Messages (M_ID, Message, A_ID) VALUES ('', '".$Message."', '".$ResultAID['A_ID']."')";

关于php - 如何在另一个表中抓取主键并将其放入外键? PHP, MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40921461/

相关文章:

php - 在 PHP 中使用另一个类中的 MySQLi

MySQL - 完全新手 - 我的外键编码有什么问题?

javascript - 当值低于前一个值时,有没有办法在 Highcharts 中动态创建情节线?

mysql - 我应该使用什么类型的数据库?

php - 安全下载文件

php - 基本连接表和外键

MySQL:更改表以设置外键

sql - 在一张表中包含多个外键是一种好习惯吗?

php - MySQL变量超出范围

php - 登录表单 > 叠加层因表单错误而关闭