1
我有兩個頁面:addbroker.php addbroker.inc.php外鍵PHP的mysqli插入數據啓用表
從addbroker.php我們獲取brokername與下拉列表下面& accountno,ACCOUNTNAME GET通過表單添加。
<?php
$stmt = $mysqli->prepare('SELECT brokername FROM brokerlist ');
$stmt->execute(); // Execute the prepared query.
$stmt->bind_result($brokername);
$stmt->store_result();
echo "<select name='brokername'>";
while($stmt->fetch()) {
echo "<option value='" . $brokername . "'>" . $brokername . "</option>";
}
$stmt->close();
echo "</select>";
?> <br>
上addbroker.inc.php ,我們正在把數據masterbroker其中user_id說明,brokername,broker_id是外鍵。
// Insert the new account into the database
if ($insert_stmt = $mysqli->prepare("INSERT INTO masterbroker (user_id, accountno,accountname,brokername,revenue,broker_id) VALUES ((SELECT user_id FROM client WHERE user_id =?), ?, ?, (SELECT brokername FROM brokerlist WHERE brokername = ?),(SELECT broker_id FROM brokerlist WHERE brokername = ?))")) {
$insert_stmt->bind_param('isssds', $user_id, $accountno,$accountname,$brokername,$revenue,$brokername);
// Execute the prepared query.
if (! $insert_stmt->execute()) {
header('Location: ../error.php?err=AddBroker failure: INSERT');
exit();
}
}
我在綁定變量時添加了$ brokername兩次。因爲我認爲我們從$ brokername獲取broker_id,爲什麼使用單獨的$ broker_id變量。不知道PHP編碼中的錯誤在哪裏,數據沒有添加。
感謝您的簡單形式,但數據仍然沒有添加。 – mimi
另外user_id駐留在另一個名爲client的表中。那麼這是如何工作的? – mimi
我已經更改了代碼,綁定的次數比他們本來的少1次。此外,值被簡單綁定,與「select 1」,abc''相同,並且您綁定了user_id值本身。 –