だよねがエンジニアになるんだよね

プログラミング初心者の学びブログ

バリデーションエラーでも入力値を残そう(6-31)

現状の課題

バリデーションエラーになると入力してた内容が消える

エラーが起きても他の入力は消えないようにしたい

 

フォームの入力値を残すには

inputタグのvalue属性を使おう

value属性

input属性の値を指定する属性

テキスト入力欄などにおいては初期入力値を表す

 

そもそもなぜ消える?

入力後新しいHTMLファイルを読み込むからまっさらになる

じゃあどうすればいい?

入力した値を次のフォームの初期値を設定しておけばいい

 

)

<input type="text" id="name" name="name" value="<?php echo $company['name'] ?>">

 

 

ラジオボタンの初期値の設定にはchecked属性を使おう

checked属性を付けると初期値で選択された状態になる

男性が最初から選択された状態になる

<input type="radio" name="sex" id="sex1" value="男性" checked>

<label for="sex1">男性</label>

 

$user['sex'][男性]の時に最初から選択する(三項演算子)

<input type="radio" name="sex" id="sex1" value="男性"

<?php echo ($user['sex'] === '男性') ? 'checked' : ''; ?>>

<label for="sex1">男性</label>

 

 

条件式を一行で書きたい時は三項演算子

(比較条件)?(1) : (2)

 

これと一緒

if(比較条件){

1

}else{

2

}