繁体   English   中英

使用PHP在表中插入多行

[英]Insert multiple rows in to table using php

我正在尝试使用php在表中插入多行

<?php

$host = "localhost";
$username = "mysql_username";
$password = "mysql_password";
$dbname = "employee";
$con = mysqli_connect($host, $username, $password, $dbname) or die('Error in Connecting: ' . mysqli_error($con));

$st = mysqli_prepare($con, 'INSERT INTO emp(name, gender, designation) VALUES (?, ?, ?)');
// bind variables to insert query params
mysqli_stmt_bind_param($st, 'sss', $name, $gender, $designation);

for ($x = 0; $x <= 3; $x++) {       
    $name = 'tom';
    $gender = 'male';
    $designation = 'developer';
    mysqli_execute($st);
}

//close connection
mysqli_close($con);

?>

但是我要插入的行未保存在数据库中。 我的代码中有任何错误吗?

其实我想要json数组for循环 ,我只是测试使用for循环来知道它是否有效。

我认为代码是正确的,但是请尝试以下操作:

<?php
$host       = "localhost";
$username   = "mysql_username";
$password   = "mysql_password";
$dbname     = "employee";
$con = mysqli_connect($host, $username, $password, $dbname) or die('Error in Connecting: ' . mysqli_error($con));

$st = mysqli_prepare($con, 'INSERT INTO emp(name, gender, designation) VALUES (?, ?, ?)');

for ($x = 0; $x <= 3; $x++) {

    $name = 'tom';
    $gender = 'male';
    $designation = 'developer';

    // bind variables to insert query params
    mysqli_stmt_bind_param($st, 'sss', $name, $gender, $designation);
    mysqli_execute($st);
}

//close connection
mysqli_close($con);
?>

mysqli_stmt_bind_param($query, 'is',…)表示第一个值是整数(i),下一个值是字符串(s)。 随时进行调整以最适合您的实际数据类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM