Show
select.txtの各行の情報を持つチェックボックスを表示し、送信するプログラムがquiz.phpなのですが、表示されるボックス名は各行の1列目で、この1列目を取得したいのですが、 どうすればいいでしょうか? 取得し、そしてFORM送信し、POSTで受け取りたいのですが・・・。 なんか上手くいかなくって。 select.txt 漢字,1,0,1,0,1,0.5,1,0,1,0 漢字,1,0,1,0,1,0.2,1,9,1,0 漢字,1,3,1,0,1,0,1,0,1,9 漢字,1,0,1,0,1,0.5,1,0,1,0 漢字,1,0,1,0,1,0.2,1,9,1,0 漢字,1,3,1,0,1,0,1,0,1,9 漢字,1,0,1,0,1,0.5,1,0,1,0 漢字,1,0,1,0,1,0.2,1,9,1,0 漢字,1,3,1,0,1,0,1,0,1,9 quiz.php <form method="post"> <?php //<br>を加えた所で改行されている模様。 $checked = 0; foreach (file($selfile,FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES) as $line) printf('<input type="radio" name="sel" value="%s"%s>%s <br>'. PHP_EOL, explode(',', $line)[0], $checked++ ? '' : ' checked', explode(',', $line)[1]); ?> <br> <!-- 状態送信、radio押さず更新すると2枚引きになる? --> <input type="hidden" name="name" value="<?php echo $name ?>"> <input type="hidden" name="turn" value="<?php echo $turn ?>"> <input type="hidden" name="action" value="<?php echo $action ?>"> <input type="radio" name="radio" value="1" checked>使う <input type="radio" name="radio" value="2">捨てる <br> <button>更新</button> </form>僕がPHPフレームワークにLaravelを使ってます。 便利な反面、設定に手こずることも度々です。 今回遭遇したのは次の問題 「データベース設定が上手くできない!」 この設定方法が分からなかったので、 このページの目次
1.まず.envファイルからデータベース設定変更この.envファイルは以下のパスにあります。 ▼ このパスにある(適宜読み替え) このファイルは後述のdatabase.phpにおけるデフォルトのデータベース接続情報を保有しているファイルです。(データベースのみでなく、Laravelの環境変数の設定用) そして以下のような部分を探してみてください。 ▼ このようなデータベース設定があるはず
なんかデフォルト設定が書いてあります。当然これだとデータベースに接続できないので、例えば以下のように正しいデータベース接続情報に変更します。 ▼ このように変更修正
正直言って、この.envファイルでのDB設定はあまり重要ではありません。次に紹介するdatabase.phpの設定の方が柔軟に対応できます。 この .env ファイルはデータベースのみならず、全てのLaravel設定の起点になります。この設定が肝心なので忘れてはいけません。 2.次にdatabase.phpでデータベース接続情報を設定お次はdatabase.phpを開いてください。 ▼ こちらのパスにあるファイル
このファイルは文字通りデータベースに関するアレコレ(主にDB接続情報)を設定変更できるファイルです。開くと色々書いてあります。 その中で次の部分がmysql接続情報です。 ▼ デフォルトだと次の内容になってる
ここを正しいデータベース接続情報に変更します。 ▼ このように変更修正する
絶対に変更すべき箇所は次の3つ
それから 'collation'=>'utf8mb4_unicode_ci' という部分がありますが、これが照合順序です。こちらもデータベースの照合順序に変更してください。 あとは多分変更しなくてOK。そのままで大丈夫です。 最後にデータベース設定をmigrateする最後に次のようなコマンドを実行 これで次のような表示になれば成功です。
ちなみに僕の環境での表示例なので参考までに・・・とりあえず succefully と出ていれば成功です。(エラーが出ていなければOK) もし migrateでエラーが出るならキャッシュ削除この時エラーが出ることがあります。 ▼ 例えばこういう感じのエラー
そういう場合は次のコマンドを実行してください。 ▼ 設定キャッシュを削除 ▼ キャッシュも削除 これで再び php artisan migrate してみると上手くいくこともあります。もちろんデータベース接続情報が間違っていないかの確認もお忘れなく・・・ 関連記事 |