gpt4 book ai didi

php - $_POST 插入多对多,错误的 PHP 语法?

转载 作者:太空宇宙 更新时间:2023-11-03 10:34:45 24 4
gpt4 key购买 nike

编辑:忽略任何 SQL 注入(inject)或易受攻击的代码语句:D(学校项目)。

我想在我的网页上创建一个插入表格,我可以从表格中选择一位艺术家,包括表格中的一首歌曲,并将它们组合起来插入到组合外键表。

我已经设法在我的网页上只选择和插入单个艺术家和歌曲下拉列表,但是希望将每个表中的两个 ID 组合以将它们组合成多个许多相关表。但是当我按下提交按钮时没有任何反应,而且我是初学者并且不知道我是否遗漏了实际发布信息的任何重要部分。

故障排除 我已经尝试并测试了我的代码。我看到如果我删除我的代码没有问题,所以我认为问题仍然存在于语法上,如第一个下拉菜单所示,以及第二个下拉菜单和提交按钮,但问题出在实际处理和 SQL 查询部分,它在哪里永远不会去数据库..

问题: enter image description here

正如您在下面看到的,我在左下角显示了一个文本歌曲名称和一个下拉菜单,其中包括带有提交按钮的艺术家姓名。但我的问题仍然存在,因为选择然后从两个下拉列表插入组合表不起作用,它实际上没有提交,我希望它发布到数据库中我能做什么。但是有什么不对吗?如果有任何问题或帮助,我将不胜感激,这个社区非常棒,非常适合在其中运作!

数据库 Database in use in codePHP

  <form method='POST'>
<?php

include('connect_mysql.php');
if(isset($_POST["mangetilmange"])) {
$song_id = $_POST["song_id"];
$artist_id = $_POST["artist_id"];


$sql ="INSERT INTO artist_has_song (song_id, artist_id) VALUES
('$song_id', '$artist_id')";

if($conn->query($sql)) {
echo "Completed";

} else {
echo "Blablalbablablablablablablabl $sql
($conn->error.";
}
}
?>

歌曲名

<?php
$sql = "SELECT * FROM song";
$resultat = $conn->query($sql);

echo "<select name='song_id'>";

while ($rad = $resultat->fetch_assoc()) {
$song_id = $rad["song_id"];
$songname = $rad["songname"];

echo "<option value='$song_id'>$songname</option>";
}

echo "</select>";
?>

艺术家姓名

<?php
$sql = "SELECT * FROM artist";
$resultat = $conn->query($sql);

echo "<select name='artist_id'>";

while ($rad = $resultat->fetch_assoc()) {
$artist_id = $rad["artist_id"];
$artistname = $rad["artistname"];

echo "<option value='$artist_id'>$artistname</option>";
}

echo "</select>";
?>
</form>
<input type="submit" name="mangetilmange" value ="Submit">

最佳答案

将您的代码更改为:

 <form method='POST'>
<?php

include('connect_mysql.php');
if(isset($_POST["mangetilmange"])) {
$song_id = $_POST["song_id"];
$artist_id = $_POST["artist_id"];


$sql ="INSERT INTO artist_has_song (song_id, artist_id) VALUES
('$song_id', '$artist_id')";

if($conn->query($sql)) {
echo "Completed";

} else {
echo "Blablalbablablablablablablabl";
}
}
?>

Song Name
<?php
$sql = "SELECT * FROM song";
$resultat = $conn->query($sql);

echo "<select name='song_id'>";

while ($rad = $resultat->fetch_assoc()) {
$song_id = $rad["song_id"];
$songname = $rad["songname"];

echo "<option value='$song_id'>$songname</option>";
}

echo "</select>";
?>

Artist Name

<?php
$sql = "SELECT * FROM artist";
$resultat = $conn->query($sql);

echo "<select name='artist_id'>";

while ($rad = $resultat->fetch_assoc()) {
$artist_id = $rad["artist_id"];
$artistname = $rad["artistname"];

echo "<option value='$artist_id'>$artistname</option>";
}

echo "</select>";
?>
<input type="submit" name="mangetilmange" value ="Submit">
</form>

关于php - $_POST 插入多对多,错误的 PHP 语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50569275/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com