如何使用php的强大功能和魔力在数据库中输入或插入一个或多个产品的名称?

如何使用php的强大功能和魔力在数据库中输入或插入一个或多个产品的名称?,php,for-loop,mysqli,foreach,Php,For Loop,Mysqli,Foreach,我正在尝试输入一个名称和更多的产品。这里的场景是当我 输入名称:uuuuuuuuuuuuuuuuuuuuuuuuuuuuu产品:______________ 产品名称:uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu 它将被插入数据库,并显示如下: Johnny | Iphone Johnny | Windows Phone 约翰尼| Iphone Johnny | Windows

我正在尝试输入一个名称和更多的产品。这里的场景是当我

输入名称:uuuuuuuuuuuuuuuuuuuuuuuuuuuuu产品:______________ 产品名称:uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

它将被插入数据库,并显示如下:

Johnny | Iphone Johnny | Windows Phone 约翰尼| Iphone Johnny | Windows Phone 这是我的密码:

<form action="" method="POST">
    <table>
        <tr>
            <td>Name</td>
            <td><input type="text" name="name_txt[]" /></td>
        </tr>

        <tr>
            <td>Product</td>
            <td><input type="text" name="product_name_txt[]" /></td>
        </tr>

        <tr>
            <td>Product</td>
            <td><input type="text" name="product_name_txt[]" /></td>
        </tr>

        <tr>
            <td>&nbsp;</td>
            <td><input type="submit" name="submit" value="add" />
            <input type="reset" name="submit" value="clear" /></td>
        </tr>
    </table>
</form>

<?php   

if(isset($_POST['submit']))
    {      
    include 'db.php';

    foreach($_POST['product_name_txt'] as $row => $value){

        $name=$_POST['name_txt'][$row];
        $product=$_POST['product_name_txt'][$row];

        $sql = "INSERT INTO request(p_name, product_name) VALUES ('$name','$product')";

        if (mysqli_query($conn, $sql)) {
            echo "New record created successfully";
        } else {
            echo "Error: " . $sql . "<br>" . mysqli_error($conn);
        }
     }
   }    
?>

名称
产品
产品

首先,由于只有一个名称,您应该使用
name\u txt
而不是
name\u txt[]
。其次,对于您的产品,请使用
infrade()
函数以字符串连接数组元素,然后执行
INSERT
操作

改变这个

<td><input type="text" name="name_txt[]" /></td>


您的表单处理过程如下所示:

if(isset($_POST['submit'])){      
    include 'db.php';
    $name=$_POST['name_txt'];
    $products = implode(" ", $_POST['product_name_txt']);

    $sql = "INSERT INTO request(p_name, product_name) VALUES ('$name','$products')";

    if (mysqli_query($conn, $sql)) {
    echo "New record created successfully";
    } else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
    }
}  
if(isset($_POST['submit']){
包括“db.php”;
$name=$\u POST['name\u txt'];
$products=内爆(“,$U POST['product\U name\U txt']);
$sql=“在请求(p_名称、产品名称)值(“$name”、“$products”)中插入”;
if(mysqli_查询($conn,$sql)){
echo“新记录创建成功”;
}否则{
echo“Error:”.$sql.
“.mysqli_Error($conn); } }
以下是参考资料:


以上答案是正确的,但您只需修改即可


$name=$\u POST['name\u txt'];
$products=$\u POST['product\u name\u txt'];
foreach(产品为$value){
$sql=“在请求(p_名称、产品_名称)中插入值(“$name”、“$value”)”;
if(mysqli_查询($conn,$sql))
{
回显“已成功创建新记录”;}
否则{
echo“Error:”.$sql.
“.mysqli_Error($conn); } }
您的代码有错误吗?逻辑错误请查看链接图像[link]()
if(isset($_POST['submit'])){      
    include 'db.php';
    $name=$_POST['name_txt'];
    $products = implode(" ", $_POST['product_name_txt']);

    $sql = "INSERT INTO request(p_name, product_name) VALUES ('$name','$products')";

    if (mysqli_query($conn, $sql)) {
    echo "New record created successfully";
    } else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
    }
}  
<td><input type="text" name="name_txt" /></td>
$name = $_POST['name_txt'];
$products = $_POST['product_name_txt']; 

foreach($products as $value){
$sql = "INSERT INTO request(p_name, product_name) VALUES ('$name','$value')";

if (mysqli_query($conn, $sql)) 
{
 echo "New record created successfully"; }
 else { 
echo "Error: " . $sql . "<br>" . mysqli_error($conn); 
}
}