0

送信ボタンをクリックすると、配列内に文字列の名前を入れる代わりに、すべての行の列名の下の行に「配列」という名前が表示されます。私は一日中コードを変更していて、それを理解できません。私の配列には 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();
?>
4

1 に答える 1

0

変数は配列であるため、おそらく挿入する配列を取得します..

しようとする

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

したがって、配列の値を取得して db に挿入する場合は、最初に連結と foreach ループまたはそれを行う任意の php 関数を使用して文字列に変換する必要があります。爆発する、内破するなど。

これらは変換されます

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

$array = "ar1,ar2,ar3";
于 2013-04-02T07:10:04.833 に答える