数据库:插入行多查询

时间:2013-04-02 06:58:10

标签: php phpmyadmin

当我点击提交按钮时,一切正常,除了不将字符串的名称放在数组中,我在每行的列名下面的行中得到名称“array”。我一直在改变代码,无法弄明白。注意我的数组里面有超过130个字符串。

你可以在表格中放置无限量的行,对吗? 有关如何修复名称问题并增加“限制0,30”的任何建议?

这是我的代码:

是:

$array = ("","","");
$random = $array;
shuffle($random);

现在:

$array = ("","","");

仍然无效。我也试过试验mysqli_stmt_send_long_data也无法让它工作。

<?php
include ('login-home.php');
$mysqli = new mysqli("", "", "", "");
if ($mysqli->connect_error) {
    echo "Failed to connect to MySQL: (" . $mysqli->connect_error . ") " . $mysqli->connect_error;
}
if (!$mysqli->query("INSERT INTO table(id, name) VALUES (id, '".$array."')")) {
    echo "Multi-INSERT failed: (" . $mysqli->error . ") " . $mysqli->error;
}
/* Prepared statement, stage 2: bind and execute */
$id = 1;
if (!$stmt->bind_param("s", $id)) {
    echo "Binding parameters failed: (" . $stmt->error . ") " . $stmt->error;
}

if (!$stmt->execute()) {
    echo "Execute failed: (" . $stmt->error . ") " . $stmt->error;
}

for ($id; $id = $id+1; $id++) {
    if (!$stmt->execute()) {
        echo "Execute failed: (" . $stmt->error . ") " . $stmt->error;
    }
}

$stmt->close();
?>

1 个答案:

答案 0 :(得分:0)

你可能会得到要插入的数组,因为变量是一个数组..

尝试

echo $array; /// the output will be array

因此,如果要获取要插入db的数组值 你必须首先使用连接和foreach循环或任何PHP函数将它们转换为字符串 那样做。喜欢爆炸他们内爆等等。

这些将转换

$array = ("ar1","ar2","ar3"); 

$array = "ar1,ar2,ar3";