メシのタネ

めしのたねになるIT情報配信サイト


【PHP】CheckboxのPOSTについて

,

  1. Webプログラム
  2. PHP
  3. 【PHP】CheckboxのPOSTについて
PHPサムネイル

気がついたらプログラムをやっていました。
初仕事はWebのアンケート。
項目の数が凄い多いし、チェックボックスだのなんだの入り乱れてて
ジャングルみたいなコードになってて、入りたくないコードになっていましたが
まぁそろそろ終わりが見えてきました。

イレギュラーな部分とかもあって、対応するのに苦労したけど勉強することも多かったです。

で、そんな中で、特になんでやねんこれって思ったのが
checkboxのvalueが出力されてこない事でした。
答えは、checkboxの中にtextがあったのに同じnameにしてたからです。


<form action="#" method="POST">
<input type="checkbox" name="hoge" value="moga" />hoge
<input type="checkbox" name="huga" value="hoga" />huga
<input type="checkbox" name="piyo" value="puyo" />puyo
//極端ですけど名前が一緒だったらダメみたい。
<input type="text" name="piyo" value="" />pyo
<inpu type="submit" value="送信" />
</form>

//こうやって書くことで、わざわざ別の名前にしなくても、配列でぶっとばしてくれます。
//調べてみたら二次元配列でもできるみたいだよ!
<form action="#" method="POST">
<input type="checkbox" name="hoge[]" value="moga" />hoge
<input type="checkbox" name="hoge[]" value="hoga" />huga
<input type="checkbox" name="hoge[]" value="puyo" />puyo
<input type="text" name="hoge[]" value="" />pyo
<inpu type="submit" value="送信" />
</form>

<form action="#" method="POST">
<?php
$abesi = ('moga','hoga','puyo');
for($i=0; $i < count($abesi); $i++)
{
echo "<input type="checkbox" name="hoge[$i][]" value="$abesi[$i]" />$[i];
}
?>
//もう一個[]を増やせば良いだけだね!シンタックス出たら適当に直してね!
<input type="submit" value="送信" />
</form>


とまぁ、こんなしょーもない事で30分くらい使ってしまいました。
皆さんは、正しいコードと冴えた頭で、困難を乗り切ってください。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.

若い頃、「仕事中にハマったこと」や「誰かに共有したい技術的な気づき」をアウトプットしたくてブログを始めましたが、勢い任せでよく分からない記事を大量生産し、あえなく飽きて終了。

改めて今、キャリア15年分の経験や知識が、これからITエンジニアを目指す方や、同じような課題で悩んでいる現役エンジニアの「メシのタネ」になるような記事を残したいと思っています。
※過去の記事は見ると精神が崩壊するため、そっとしておいてください。

🛠 経歴という名の珍道中:
文系Fラン → 広告営業 → Web営業 → 通信営業 → Web進行 → 出版 → Web媒体運用 → ソフトウェアハウス → SES → フリーランス

専門教育も受けず、転職歴も多数。履歴書はまるで時系列の事故記録のようですが、試行錯誤を重ね、なんとかエンジニアとして食べています。

このブログでは、そんな「履歴書クラッシャー型エンジニア」が送る、
名古屋一敷居の低い、実務に役立つ技術ブログを目指します。

Laravel
belongsToMany 実戦ガイド ── “withPivot”で追加カラムを守る 中間テーブル設計チェックリストNew!!
PHP
魔王と行く! / Interface / Polymorphism / Ontology 深淵ガイドNew!!
Laravel
Laravel 12、「コード 1 行も書き換えず未来へ」──静かな革命の手順書New!!
Laravel
LaravelのMiddlewareって意味あるの?仕組み・使いどころ・やらかしまで整理してみた
Laravel
ServiceProviderって何してるの?DIの背後で動いてるやつの正体
Laravel
LaravelのサービスコンテナとDI、「書いてるだけで動く」コードの正体