После нескольких попыток и поиска ответов в Интернете я немного застрял. Я не уверен, где или как именно я должен вводить операторы SQL и как сделать так, чтобы в таблицу компоновщика были вставлены идентификаторы из портфолио и таблицы участников, и чтобы затем веб-сайт мог отображать эта информация Не уверен, что это достаточно ясно, поэтому позвольте мне объяснить, чего именно я хочу достичь с этим.
Я хотел иметь возможность отображать записи акций для одного пользователя, включая символ акции и количество акций, принадлежащих этому пользователю. Хотя я создал все таблицы и правильно связал их (я думаю), я понятия не имею, как на самом деле вставить и затем извлечь записи в / из подходящих мест с помощью php. У меня есть таблица компоновщика с stockID & memberID, которые действуют как внешние ключи, а затем, очевидно, те же первичные ключи в портфеле & члены таблицы.
Например, при добавлении акций в портфель у меня есть следующее утверждение:
if(empty($_POST['var1']) or empty($_POST['pri1']) or empty($_POST['vol1']))
{
?><h1><center>To add values please fill atleast first row completely.</center></h1><?php
die();
}
for($x=1;$x<=5;$x++)
{
$var = [];
$pri = [];
$vol = [];
if (!empty($_POST['var'.$x]) and !empty($_POST['pri'.$x]) and !empty($_POST['vol'.$x]))
{
$var[$x] = $_POST['var'.$x];
$pri[$x] = $_POST['pri'.$x];
$vol[$x] = $_POST['vol'.$x];
$sql = "INSERT INTO portfolio
(stocks_symbol, price, volume)
VALUES ('$var[$x]', $pri[$x], $vol[$x])
ON DUPLICATE KEY UPDATE
price=$pri[$x], volume=$vol[$x]";
// Check if values are added successfully
if(mysqli_query($conn, $sql))
{
?><h1><center><?php
echo $x.". Values added.";
?></h1><center><?php
}
else
{
?><h3><center><?php
echo $x.". Error adding values to table". "<br>". $sql.
"<br>". $conn->error;
?></h3><center><?php
}
}
}
mysqli_close($conn);
}
Но, как вы можете видеть, он добавляет запись в таблицу портфолио и нигде не упоминает идентификатор пользователя, что означает, что идентификаторы не связаны, а таблица компоновщика не задействована … Итак, портфель отображается для всех, независимо от того, какой пользователь вошел в систему.
Что касается отображения этих данных в таблице для пользователя, у меня есть это:
$sql = "SELECT * FROM portfolio";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0)
{
while($row = mysqli_fetch_assoc($result))
{
$sym[$y] = $row["stocks_symbol"];
$pri[$y] = $row["price"];
$vol[$y] = $row["volume"];
$y += 1;
}
}
// If database empty
else
{
?><h1><center><?php
echo "Portfolio Empty";
?></h1></center><?php
die();
}
mysqli_close($conn);
Я не уверен, правильно ли я это формулирую, но, надеюсь, вы поймете, что я имею в виду, и буду очень признателен за помощь / руководство, так как я не смог найти решение этой проблемы.
Задача ещё не решена.
Других решений пока нет …