質問編集履歴
2
ご指摘頂いた内容を加筆致しました。
    
        title	
    CHANGED
    
    | @@ -1,1 +1,1 @@ | |
| 1 | 
            -
             | 
| 1 | 
            +
            XAMPPを用いてブラウザからデータ登録 エラーを解消したいです。
         | 
    
        body	
    CHANGED
    
    | @@ -1,11 +1,11 @@ | |
| 1 1 | 
             
            ### 前提
         | 
| 2 | 
            -
             | 
| 2 | 
            +
            XAMPPを使用して、ブラウザからデータの登録を行いたいです。
         | 
| 3 | 
            -
             | 
| 3 | 
            +
            しかし、重複したpid(ID)を登録する際にエラーが表示されてしまい、困っています。
         | 
| 4 4 |  | 
| 5 5 | 
             
            ### 実現したいこと
         | 
| 6 | 
            -
            写真のようなデータをベースを作成して、データの登録を行っています。
         | 
| 6 | 
            +
            写真のようなデータをベースを作成して、XAMPPを用いて、ブラウザからデータの登録を行っています。
         | 
| 7 7 | 
             
            
         | 
| 8 | 
            -
             | 
| 8 | 
            +
            。
         | 
| 9 9 |  | 
| 10 10 |  | 
| 11 11 | 
             
            pid(ID)を主キーで設定しただけでは、重複したpid(ID)を登録する際に、
         | 
| @@ -42,4 +42,4 @@ | |
| 42 42 |  | 
| 43 43 | 
             
            ### 補足情報(FW/ツールのバージョンなど)
         | 
| 44 44 |  | 
| 45 | 
            -
            Windows10
         | 
| 45 | 
            +
            Windows10、XAMPP
         | 
1
ご指摘頂いた内容を加筆しました。
    
        title	
    CHANGED
    
    | 
            File without changes
         | 
    
        body	
    CHANGED
    
    | @@ -1,27 +1,40 @@ | |
| 1 1 | 
             
            ### 前提
         | 
| 2 | 
            -
            データベースで、データを重複して登録 | 
| 2 | 
            +
            データベースで、データを重複して登録できなくしたいです。
         | 
| 3 | 
            -
             | 
| 3 | 
            +
            そのために、pid(ID)を主キーで設定していますが、重複したpis(ID)の登録時にエラーが表示されて困ています。
         | 
| 4 4 |  | 
| 5 5 | 
             
            ### 実現したいこと
         | 
| 6 | 
            +
            写真のようなデータをベースを作成して、データの登録を行っています。
         | 
| 7 | 
            +
            
         | 
| 6 | 
            -
            データ | 
| 8 | 
            +
            データベースで、データを重複して登録できなくしたいです。
         | 
| 7 9 |  | 
| 10 | 
            +
             | 
| 11 | 
            +
            pid(ID)を主キーで設定しただけでは、重複したpid(ID)を登録する際に、
         | 
| 12 | 
            +
            ```
         | 
| 13 | 
            +
            Uncaught mysqli_sql_exception:  Duplicate entry 'a123' for key 'PRIMARY'
         | 
| 14 | 
            +
            ```
         | 
| 15 | 
            +
            というエラーが表示されます。
         | 
| 16 | 
            +
             | 
| 17 | 
            +
            このエラーを表示させずに、別ブラウザで「このIDは既に使用されています」のように表示させたいです。
         | 
| 18 | 
            +
             | 
| 8 19 | 
             
            ### 発生している問題・エラーメッセージ
         | 
| 9 | 
            -
            
         | 
| 10 | 
            -
             | 
| 20 | 
            +
            同じpid(ID)のデータを登録しようとした際に、登録できないクエリを使用すれば、エラーは発生しないと考えて、以下のクエリを考えたのですが、
         | 
| 11 21 |  | 
| 12 | 
            -
            同じIDのデータを登録しようとした際に、登録できないようにするために、以下のクエリを考えたのですが、
         | 
| 13 | 
            -
             | 
| 14 22 | 
             
            $query = "INSERT INTO products VALUES ('{$pid}', '{$name}', '{$cost}', '{$price}') WHERE NOT EXISTS (SELECT pid, name, cost ,price FROM products WHERE pid = '{$pid}')";
         | 
| 15 23 |  | 
| 16 | 
            -
             | 
| 24 | 
            +
            操作を行ったところ、 
         | 
| 17 25 | 
             
            ```
         | 
| 18 26 | 
             
            Uncaught mysqli_sql_exception: SQL 構文にエラーがあります。
         | 
| 19 27 | 
             
            ```
         | 
| 20 28 | 
             
            とエラーが表示されます。
         | 
| 21 29 | 
             
            SQL文のどこが構文エラーになっているのでしょうか?
         | 
| 22 | 
            -
            何かわかる方がいらっしゃったら、教えて頂きたいです。
         | 
| 23 30 |  | 
| 24 31 |  | 
| 32 | 
            +
             | 
| 33 | 
            +
             | 
| 34 | 
            +
             | 
| 35 | 
            +
            何かわかる方がいらっしゃりましたら、教えて頂きたいです。
         | 
| 36 | 
            +
             | 
| 37 | 
            +
             | 
| 25 38 | 
             
            ### 試したこと
         | 
| 26 39 |  | 
| 27 40 | 
             
            NOT EXISTSの使い方 で検索
         | 
