PHP初心者です。
テキストボックスに入力された発売日をチェックしてMySQLのDATATIME形式の発売日のフィールドにデータを突っ込むプログラムを組んでいるのですが
1、DATATIMEは4-2-2の形式なので、この通りかチェックしたい
2、発売日が不明な場合は空欄でもOKにしたい
3、入力はされているが4-2-2の形式以外の場合はエラーメッセージを出したい
4、入力された数値が4-2-2の形式でも存在しない日付の場合もエラーメッセージを出したい
以上のことを踏まえて
if ($_POST['sale'] == '') {
$error['sale'] = 'black';
<input type="text" name="sale" size="10" id="sale">
<?php
$sale = mb_convert_kana($_REQUEST['sale'], 'a', 'UTF-8');
if (preg_match("/^\d{4}\-\d{2}\-\d{2}$/", $sale)) {
echo htmlspecialchars($_POST['sale'], ENT_QUOTES, 'UTF-8');
} else if ($error['sale'] == 'blank') {
echo htmlspecialchars($_POST['sale'], ENT_QUOTES, 'UTF-8');
}
?>
1、2までは何となくできたのですが3のエラーメッセージを出す場合CSSで文字の色を変えたいので
<p class="error">* 発売日は 空欄 もしくは 2010-01-01 の形式でご記入ください</p>
HTMLでこれを入れる場合、どのようにプログラムを組めばよいのでしょうか?
単純に考えれば
if ( ) {
} else if ( ) {
} else {
}
みたいな感じになると思うのですがそうするとPHPの中にHTMLを記述しないといけなくなります。
自分はまだPHPの中にHTMLを記述する方法は知りません。
また、4の機能も付ける場合どのようにプログラムを組めばよいかわかりません。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
if ($_POST['sale'] == '') {
$error['sale'] = 'black';
<input type="text" name="sale" size="10" id="sale">
<?php
$sale = mb_convert_kana($_REQUEST['sale'], 'a', 'UTF-8');
if (preg_match("/^\d{4}\-\d{2}\-\d{2}$/", $sale)) {
echo htmlspecialchars($_POST['sale'], ENT_QUOTES, 'UTF-8');
} else if ($error['sale'] == 'blank') {
echo htmlspecialchars($_POST['sale'], ENT_QUOTES, 'UTF-8');
}
?>
> 1、2までは何となくできたのですが3のエラーメッセージを出す場合CSSで文字の色を変えたいので
> <p class="error">* 発売日は 空欄 もしくは 2010-01-01 の形式でご記入ください</p>
> HTMLでこれを入れる場合、どのようにプログラムを組めばよいのでしょうか?
エラーの場合に上記タグを変数Aに設定し、任意の部分で変数Aをechoする、で良いかと。
$A = '';
if ( ) {
$A = '<p class="error">* 発売日は 空欄 もしくは 2010-01-01 の形式でご記入ください</p>';
} else if ( ) {
$A = '<p class="error">* なんか別なエラー</p>'
}
echo $A;
> みたいな感じになると思うのですがそうするとPHPの中にHTMLを記述しないといけなくなります。
> 自分はまだPHPの中にHTMLを記述する方法は知りません。
HTML内にPHPコードを書けばいいだけです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP PHP MySql ページング 2 2022/09/20 06:38
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
switch()文で値の大小比較
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
phpでcookieがうまく保存されない
-
変数の受け渡しによる画像の表示
-
PHP一覧表示した項目にリンクを...
-
小数点以下0の非表示
-
PHPでのパスワード制限のセキュ...
-
batファイルでPC名称の変更
-
findstrのerrorlevel
-
三項演算子/echoとprintの違い
-
環境変数「%USERPROFILE%」の内...
-
$_SERVER["REQUEST_METHOD"]に...
-
バッチファイルで、全てのウィ...
-
オブジェクトの中身の判定(PHP)
-
PHPとCSSを使用して九九...
-
RSSにdiv,ul classを付けたいの...
-
DBのハッシュ化したパスワード...
-
syntax error, unexpected 'ech...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
switch()文で値の大小比較
-
phpでcookieがうまく保存されない
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
syntax error, unexpected 'ech...
-
findstrのerrorlevel
-
バッチファイルで、全てのウィ...
-
PHPで訪問回数を表示するカウン...
-
PHP一覧表示した項目にリンクを...
-
DBのハッシュ化したパスワード...
-
小数点以下0の非表示
-
Windowsのsetコマンドでの小数...
-
オブジェクトの中身の判定(PHP)
-
bashの関数の引数にスペースが...
-
PHPでのパスワード制限のセキュ...
-
RSSにdiv,ul classを付けたいの...
-
pdftkを使った処理をバッチファ...
-
ゼロとNULLを区別して number_f...
-
コマンドプロンプト フォルダ内...
おすすめ情報