• 締切済み

削除を実行したときのエラー表示について

番号、名称、上位番号が存在した場合に、削除ボタンを押したら(上位番号が設定されているので削除できません)というエラーのメッセージを表示させたいのですが、どのようなif文を書けばいいのかが分かりません。 emptyを使ってなんとかすればいいのでしょうか? 上位番号が存在しなければ、他は何が設定されてても削除できるようにしたいです。 よろしくお願いします。 キーワードだけでも教えていただけたら、あとは自分で調べます。

  • PHP
  • 回答数2
  • ありがとう数0

みんなの回答

noname#244856
noname#244856
回答No.2

RDBから出してきた行($row)には未設定の値はNULLで格納されているはずなのでその前提で。PDOクラスを用いる例を書きます。 $stmt = $pdo->prepare('SELECT 番号, 上位番号 FROM テーブル名 WHERE 番号 = ? LIMIT 1'); $stmt->execute([filter_input(INPUT_POST, 'id')]); $row = $stmt->fetch(PDO::FETCH_ASSOC); if (!$row) { /* そもそも該当する番号が存在しない */ } elseif ($row['上位番号'] !== null) { /* 削除が禁止されている */ } else { /* 削除可能 */ }

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

RDBのこと?話がみえてこない・・・

関連するQ&A

  • Accessでのレコードの削除時の表示について

    いつもお世話になります。基本的なことかもしれませんがAccess初心者でよくわからないので 教えて下さい。 Access2010でテーブルからレコードを読み出すフォームを作成し、そのレコードを削除するため、 フォーム上に削除ボタンを設定しました。 削除ボタンをクリックすると小さなウインドウが開き下記のようなメッセージが表示されます。           1件のレコードを削除します。     「はい」をクリックすると、削除したレコードを元に戻すことはできません           「はい(Y)]   「いいえ(N)] メッセージのウインドウの下には読みだしたレコードのフォームが表示されていますが、 キーとなる顧客コード(数字6桁)の欄には #エラー と表示され、その他の項目はすべて ブランクになります。 「はい」をクリックするとレコードは削除されるので処理的には問題ないのですが、 削除する前に確認するためフォーム上の項目を表示したまま残したいです。 どのようにすればよいでしょうか? 削除ボタンのクリック時の埋め込みマクロの内容は以下のように設定しています。  エラー時         移動先 次         マクロ名  コントロールの移動     コントロール名 = [Screen].[PreviousControl].[Name]  マクロエラーのクリア   If not [Form].[Newrecord] Then     メニューコマンドの実行           コマンド レコードの削除 If文の最後   If [Form].[Newrecord] And Not [Form].[Dirty] Then 警告文 If文の最後   If [Form].[Newrecord] And [Form].[Dirty] Then     メニューコマンドの実行           コマンド レコードを元に戻す If文の最後   If [MacroError] <> 0 Then メッセージボックス           メッセージ = [MacroError].[Description] 警告音 はい        メッセージの種類 なし      メッセージのタイトル If文の最後  ウインドウを閉じる   オブジェクトを閉じる    オブジェクトの種類      オブジェクト名    オブジェクトの保存 確認 参考にしたAccessのプログラムから削除ボタンをコピーしたため、これが適しているかどうか わかりません。 よろしくお願いします。   

  • ACCESS2010 実行時エラー 2766

    ACCESS2010に関しての質問です。 マクロ中にIF文で分岐を設定しています。それ自体は正常に認識されますが、そのIF文中に更にもう一つのIF文を設定すると、 実行時エラー '2766': このオブジェクトには、オートメーション オブジェクト'|'は含まれません。 というメッセージが表示されます。 構文上に誤りはないのですが、解決策が見つかりません。 どなたか教えていただけませんか? ちなみに、最初のIF文ではform上の値を判断しており、次のIF文ではテーブル上の値を判断しています。 どうかよろしくお願いします。

  • Parse errorが表示されない

    Parse errorが表示されない いつもお世話になっております。 PHPで開発を進めております。 開発するにあたりエラーの表示をしたいのですが、下記の設定を行っても表示されません。 php_flag display_errors on php_value error_reporting 2039(4096も試しました) <?php echo "てすと" ?> のようにセミコロンを付けないなどのエラーが表示されません。 <?php if () { } ?> if文の条件文が入っていない場合のエラーは表示されます。 <環境> PHP:5.1.6 何か他に設定するところがあるのでしょうか。 ご教示お願いいたします。

    • ベストアンサー
    • PHP
  • phpで入力ホームエラーメッセージ表示について

    php エラーメッセージ表示について ホームページの入力ホームエラーメッセージ表示のコードを書いています。 コードは <?php function validation($data) { $error = array(); // 名前のバリエーション if ( empty($data['your_name']) ) { $error[] = " 「名前」を入力してください。"; } //フリガナのバリエーション if( empty($data['hurigana']) ) { $error[] = " 「フリガナ」を入力してください。"; } なのですが、写真の入力欄にある、クレジットカードの選択についてもエラーメッセージを表示したいのですが、どういうコードを書いたら良いでしょうか?教えてください。 例えばクレジットカードと銀行振り込みを選択できるのですが、どちらかを選択しない場合に、「決済方法を選択してください」のようにメッセージを表示させたいです。

    • 締切済み
    • PHP
  • OE6 メッセージ削除後の表示設定

    受信メッセージを開く→読む→画面中の「削除」ボタン押すと 次の受信メッセージが表示(開く)されてしまう 「削除」ボタン押後、受信フォルダ(なり、他フォルダなり) 一覧表示に戻る設定はありますか?

  • 削除する記事が存在しない場合の処理

    投稿すると自動的にその投稿に対して記事番号なるものが割り当てられ、 その記事番号と自分で投稿時に決めた削除パスワードで 自分の投稿を削除する形式の掲示板なのですが パスワードや記事番号が入力されていない場合には 〇〇〇が入力されていませんと表示されるにもかかわらず 存在しない記事番号が入力して削除しようとすると 「正常に削除いたしました」と表示されてしまいます。 (実際には存在しない記事番号なので何も削除されていないのですが) そこで下記のようにの#~#の部分を追加で記述し、 記事番号が存在しない場合にエラーとなるようにしてみたのですが これで本当にいいのか正直不安なのです。 正しいかチェックしていただけませんか? @new=(); open (IN,"$file") || error("システムエラー","ファイル「$file」を開くことができません。"); while($data = <IN>) { $flag=0; ($no,$res,$date,$cntr,$email,$tall,$weight,$age,$sub,$com,$live,$select,$photo,$pw) = split(/<>/,$data); if ($FORM{'pass'} eq "$ad_pass") { foreach $del (@DEL) { if ($no eq "$del") { $flag=1; last; } } } else { if ($FORM{'del'} eq "$no") { if (!($pw)) { &error("入力エラー","指定された記事には削除キーが設定されていません。"); } if (crypt($FORM{'pass'},$pw) ne "$pw") { &error("入力エラー","パスワードが間違っています。"); } $flag=1; } #記事番号が存在しない時、エラーを表示追加 if ($FORM{'del'} ne "$no") { if (crypt($FORM{'pass'},$pw) ne "$pw") { &error("入力エラー","記事番号が存在しません。記事番号を確認して入力し直してください。"); } } #ここまで } if ($flag == 0) { push(@new,$data); } } close (IN);

    • ベストアンサー
    • Perl
  • aviファイルの削除エラー

    WindowsXP 上で、aviファイルが存在します。 そのファイルを削除しようとすると、「ほかの人またはプログラムによって使用されています。」というエラーメッセージが表示され、削除できません。 NWで共有しているファイルではなく(PCはNWに接続していない)、かつ他のアプリで利用していない(再起動してすぐ削除した)場合でも同じエラーができます。 よい解決方法がありましたら、教えてください。

  • お気に入りキーワード設定のキーワードを削除できない

    「お気に入りキーワード設定」へ登録してあったキーワードが要らなくなりました。 「絞り込み条件」セルにある「削除」を押して、「設定を削除してよろしいですか?」画面を出し、「はい」を押して、「設定が削除されました。」画面が出ました。 お気に入りキーワードが削除できたかどうか一応確かめるために、ブラウザの再読み込みボタンを押して、「お気に入りキーワード設定」を表示させてみたら、削除されたはずのキーワードが消えていません。 何かやり方が間違っていたのでしょうか。 お気に入りキーワード設定のキーワードを削除できる確実な方法を教えて下さい。 わかるかた教えて下さい。

  • Excel2003を新規で起動させるとエラーメッセージが表示される。

    Excel2003を使用しています。 起動させると削除していてすでに存在しないファイルが無いとエラーメッセージが必ず表示されてしまいます。 これを表示させないようにする方法はないのでしょうか?

  • 起動時のエラー

    起動したときに 「VAIO Action Setup !エラーメッセージが設定ファイルが存在しないため 起動することができません。 最インストールを行ってください。」 毎回このようなエラーがでるのですが・・・ OKボタンで閉じて、普通にネットは使えています このエラーの表示をなくすには、どのような設定をすればよいでしょうか? お願いします。

専門家に質問してみよう