データベースに「Array」という単語が表示され続けます。フォームにチェックボックスがあり、苦労しています。私はさまざまなことを試しましたが、これが私が持っている最新のコーディングです。私は何を間違っていますか?
私のフォームでは、チェックボックスの名前は「cats[]」です。
最初の部分が重要かどうかはわかりません(オンラインでそれを見て、念のために残りの部分で使用してみました)
if(count($cats) > 0)
{
$str = implode(",", $cats);
}
そして、実際のコード
$cats = array();
// Not good?
//if(isset($_POST['submit']))
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if(isset($_POST['cats']))
{
$cats = $_POST['cats'];
}
$categories= $_POST['categories'];
// This saves it aa a string, as you can only save those values as string.
$str = $categories . ": " . implode(", ", $cats);
var_dump ($str);
}
そして、これはデータベース用です
$sql="INSERT INTO form_corpo_test (compagnie)
VALUES
('$_POST[cats]')";
編集:
これは正しいコードです (助けてくれてありがとう! あなたの回答のうち 2 つを「最良の回答」としてマークできたらよかったのに)。うまくいけば、これは他の人にも役立ちます(もちろん、SQLインジェクションも調べる必要がありますが)。
$cats = array();
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if(isset($_POST['cats'])) {
$cats = implode(",", $_POST['cats'] );
}
$categories= $_POST['categories'];
$str = $categories . ": " . $cats;
}
と
$sql="INSERT INTO form_corpo_test (categories)
VALUES
('$str')";