回答編集履歴
2
修正
answer
CHANGED
@@ -10,7 +10,12 @@
|
|
10
10
|
&yourold = $_POST['yourold']
|
11
11
|
```
|
12
12
|
- ↑そして使った後に定義していますし、片方`&yourold`となっていてそもそも変数になっていません。
|
13
|
+
- 上記だけでなく「変数を使った後に定義」が散見されます。「変数を定義した後に使う」流れを徹底してください
|
13
14
|
- try-catchは接続時だけでなくDB処理一連全て囲っておいてください。
|
14
15
|
- DBに変更を与える処理なのでできればトランザクション→コミットorロールバックは入れておいたほうが良いです(参考:[PHPマニュアル:トランザクションおよび自動コミット](https://www.php.net/manual/ja/pdo.transactions.php))
|
15
16
|
|
16
|
-
はじめのうちは[PHPのエラー表示はON](https://qiita.com/shotets/items/3c95aef631b2c5eadae5)にしておいたほうが良いでしょう。
|
17
|
+
はじめのうちは[PHPのエラー表示はON](https://qiita.com/shotets/items/3c95aef631b2c5eadae5)にしておいたほうが良いでしょう。
|
18
|
+
|
19
|
+
> database3.php
|
20
|
+
|
21
|
+
パラメータがないINSERT文なのでbindValue使ってません。
|
1
修正
answer
CHANGED
@@ -1,1 +1,16 @@
|
|
1
|
-
> database2.php
|
1
|
+
> database2.php
|
2
|
+
|
3
|
+
- PDOが2度呼び出されているので無駄になっていると思います。
|
4
|
+
- mysqli_*が呼ばれていますが、どちらかに統一したほうが良いですし、今回はPDO一本で良いでしょう。
|
5
|
+
- 変数未定義のまま使っています。
|
6
|
+
```php
|
7
|
+
$stmt->bind_param('1', $yourname);
|
8
|
+
$stmt->bind_param('2', $yourold);
|
9
|
+
$yourname = $_POST['yourname'];
|
10
|
+
&yourold = $_POST['yourold']
|
11
|
+
```
|
12
|
+
- ↑そして使った後に定義していますし、片方`&yourold`となっていてそもそも変数になっていません。
|
13
|
+
- try-catchは接続時だけでなくDB処理一連全て囲っておいてください。
|
14
|
+
- DBに変更を与える処理なのでできればトランザクション→コミットorロールバックは入れておいたほうが良いです(参考:[PHPマニュアル:トランザクションおよび自動コミット](https://www.php.net/manual/ja/pdo.transactions.php))
|
15
|
+
|
16
|
+
はじめのうちは[PHPのエラー表示はON](https://qiita.com/shotets/items/3c95aef631b2c5eadae5)にしておいたほうが良いでしょう。
|