使用php将从一个表中选择的行添加到另一个表中
我实际上只是想把表product中的一行添加到表product\u add中,但最后一行被插入到表product\u add中。我想要的是,当我单击“添加”按钮时,特定的行将插入到表product\u ADD中。我认为代码没有考虑if-isset$\u请求['submit']部分使用php将从一个表中选择的行添加到另一个表中,php,mysql,sql,Php,Mysql,Sql,我实际上只是想把表product中的一行添加到表product\u add中,但最后一行被插入到表product\u add中。我想要的是,当我单击“添加”按钮时,特定的行将插入到表product\u ADD中。我认为代码没有考虑if-isset$\u请求['submit']部分 <?php include'connect.php'; $image = isset($_GET['image']) ? $_GET['image'] : ""; $id = isset($_G
<?php
include'connect.php';
$image = isset($_GET['image']) ? $_GET['image'] : "";
$id = isset($_GET['id']) ? $_GET['id'] : "";
$name = isset($_GET['name']) ? $_GET['name'] : "";
$price= isset($_GET['price']) ? $_GET['price'] : "";
$sql="SELECT * FROM product";
$result = mysql_query($sql);
if($result>0){
?>
<form method="POST" id="form" name="form">
<table border='1'>
<tr>
<th>Id</th>
<th>Image</th>
<th>Name</th>
<th>Price MUR</th>
</tr>
<?php
while ($row = mysql_fetch_array($result)){
extract($row);
?>
<tr>
<td><?php echo ($row['id']); ?></td>
<td><img src=<?php echo $row['image'] ?> width='120' height='100'/></td>
<td><?php echo htmlspecialchars($row['name']); ?></td>
<td><?php echo htmlspecialchars($row['price']); ?></td>
<td>
<input id="submit" type="submit" name="submit" value='ADD'/>
</td>
</tr>
<?php
}
?>
</table>
</form>
<?php
}
if (isset($_REQUEST['submit']))
{
$insert = "INSERT INTO product_add(id, name, price) VALUES ('$id', '$name','$price')";
$insertQuery=mysql_query($insert);
}
?>
在每个while中添加from
就像这个更新的代码
<?php
include'connect.php';
$image = isset($_REQUEST['image']) ? $_REQUEST['image'] : "";
$id = isset($_REQUEST['id']) ? $_REQUEST['id'] : "";
$name = isset($_REQUEST['name']) ? $_REQUEST['name'] : "";
$price= isset($_REQUEST['price']) ? $_REQUEST['price'] : "";
$sql="SELECT * FROM product";
$result = mysql_query($sql);
if($result>0){
?>
<table border='1'>
<tr>
<th>Id</th>
<th>Image</th>
<th>Name</th>
<th>Price MUR</th>
</tr>
<?php
while ($row = mysql_fetch_array($result)){
?>
<tr>
<td><?php echo ($row['id']); ?></td>
<td><img src=<?php echo $row['image'] ?> width='120' height='100'/></td>
<td><?php echo htmlspecialchars($row['name']); ?></td>
<td><?php echo htmlspecialchars($row['price']); ?></td>
<td>
<form method="POST" action="" >
<input type="hidden" name="id" value="<?php echo $row['id']; ?>" />
<input type="hidden" name="name" value="<?php echo $row['name']; ?>" />
<input type="hidden" name="image" value="<?php echo $row['image']; ?>" />
<input type="hidden" name="price" value="<?php echo $row['price']; ?>" />
<input id="submit" type="submit" name="submit" value='ADD'/>
</form>
</td>
</tr>
<?php
}
?>
</table>
<?php
}
if (isset($_REQUEST['submit']))
{
$insert = "INSERT INTO product_add(id, name, price) VALUES ('$id', '$name','$price')";
$insertQuery=mysql_query($insert);
}
?>
注意:mysql不推荐使用mysqli或PDO,基本上这是一个通用的编码问题 类型submit和名称submit冲突 首先在表单tag enctype=multipart/formdata中添加一个属性,用于图像或视频上传 然后 创建一个名为“某物”的隐藏字段 像 然后用这个
isset$\u REQUEST['something']不要使用extract,这是魔鬼的工作,会让你在试图找到bug时毛骨悚然。如果你使用SELECT*@user3603670检查答案,也可能会引入这些问题。欢迎兄弟,但最重要的是,你必须检查自己做错了什么。以及该代码将如何为您工作。