
チェックボックスで複数選択されたチェックボックスの値を配列としてmysqlに保存したいのですがどうも上手くいきません。いろいろweb上で探してみましたが、serialize/unserialize関数?を使うのでしょうか?ちなみに抽出も上手くいきません。どなたか教えていただけませんか?宜しくお願いします。以下スクリプトの一部です。
//配列
<input type='checkbox' name='op[]' value='ac'>ac
<input type='checkbox' name='op[]' value='pw'>pw
<input type='checkbox' name='op[]' value='cd'>cd
//データベースに登録
$sql="insert into test (test) values (\"$op\")";
mysql_query($sql,$con);
//データベースから配列として抽出
$sql = "select * from op";
$rst = mysql_query($sql,$con);
$col = mysql_fetch_array($rst);
$op = $col[op];
No.1ベストアンサー
- 回答日時:
配列として保存されたものを直接書き出そうとすると、
「Array」としか表示されません。
保存しようとする場合は、その都度保存されたデータを展開しなくてはいけません。
例えばカンマ区切りにして保存してやり、取り出すときにカンマでばらしてやればいいわけです。
例)
# 登録
$sql="insert into test (test) values (\"" .implode(",", $op) ."\")";
# 抽出
(略)
$op = split(",",$col['test']);
print_r($op);
この回答への補足
早速のご回答有難うございます。
ご指摘のとおり試してみると、見事にmysqlに保存することが出来ました。ただ抽出した際に上手く配列になっておらず、
$op[] = split(",",$col['test']);
print_r($op);
としましたが、表示が
Array([0]=>ac [1]=>pw [2]=>cd [3]=>Array([0]=> N;))
とキー値[3]に余計なものが入ってしまいます。
これはこれで正しいのでしょうか?
すみません。解決しました。mysql上の問題でした。
わけの分からない補足質問でご迷惑をお掛けしましたが、本当に有難うごさいました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript JavascriptからSQLへ繋ぎ方が分からない 3 2022/07/07 00:27
- PHP $_SESSIONについて教えて下さい。 2 2023/03/02 09:18
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- JavaScript console.logがどうしても2つ機能しないのでアドバイスをくださいお願いします 2 2022/07/07 22:13
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
$_SESSIONに二次元配列を使える...
-
AppStoreのランキングを配列に...
-
PHPにてクラスを配列にすること...
-
配列をループでたくさん宣言し...
-
String だと「 ByRef引数の型が...
-
配列をMySQLの1カラムに入れ、...
-
URLのサブドメインとドメイン部...
-
配列を回すとき、最後の要素だ...
-
PHPのPOSTでの半角スペース
-
Smarty の演算方法
-
ファイルから指定行数分だけ読...
-
multiple属性のPOSTを配列で受...
-
mb_ereg_replaceについて
-
Smartyのテンプレートからjavas...
-
チェックボックスが複数選択で...
-
SimpleXML関数で取得したXML要...
-
配列のbindValue方法について
-
URLエンコードした配列を使う方法
-
file_existsでファイル名の部分...
-
ネストが深い時のforeachはどう...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
配列をループでたくさん宣言し...
-
$_SESSIONに二次元配列を使える...
-
foreachのなかで次のキーを参照...
-
file_existsでファイル名の部分...
-
PHPにてクラスを配列にすること...
-
String だと「 ByRef引数の型が...
-
ネストが深い時のforeachはどう...
-
postgresql関数をつかったレコ...
-
PHPでの簡易ビンゴゲームでの疑...
-
PHPのカッコ[ ]の使い方について
-
sortableで並べ替えてDBに保...
-
漢字のソートについて
-
プルダウンメニューでCSVデータ...
-
チェックボックス複数選択 mys...
-
PHPで配列をPOSTデータで送った...
-
URLのサブドメインとドメイン部...
-
PHP 配列の添字に変数は使えない?
-
チェックボックスが複数選択で...
-
PHP 多次元配列変数のデータ受...
-
SQL文の実行結果を変数で受けて...
おすすめ情報