teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

o-donohennkou

2017/05/16 12:25

投稿

teityann1225
teityann1225

スコア158

title CHANGED
File without changes
body CHANGED
@@ -20,12 +20,12 @@
20
20
 
21
21
  /* データベースから値を取ってきたり, データを挿入したりする処理 */
22
22
  echo"接続完了";
23
- INSERT table (a, b, c) VALUES (1, 12, 100)
23
+ INSERT INTO table (a,b,c) VALUES (1,2,3)
24
- ON DUPLICATE KEY UPDATE
24
+ ON DUPLICATE KEY UPDATE c=c+1;
25
- b = 20
26
- , c = 200;
27
25
 
26
+ UPDATE table SET c=c+1 WHERE a=1;
28
27
 
28
+
29
29
  } catch (PDOException $e) {
30
30
 
31
31
  // エラーが発生した場合は「500 Internal Server Error」でテキストとして表示して終了する

2

内容の変更。具体的なコードの記載。

2017/05/16 12:25

投稿

teityann1225
teityann1225

スコア158

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,59 @@
1
- ###教えてほしいこと
1
+ ###コード
2
+ ```PHP
3
+
4
+ <?php
5
+
6
+ try {
7
+
8
+ /* リクエストから得たスーパーグローバル変数をチェックするなどの処理 */
9
+
10
+ // データベースに接続
11
+ $pdo = new PDO(
12
+ 'mysql:dbname=_data;host=mysql540.db.sakura.ne.jp;charset=utf8;username=te;password=te6',
13
+
14
+ '',
15
+ [
16
+ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
17
+ PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
18
+ ]
19
+ );
20
+
21
+ /* データベースから値を取ってきたり, データを挿入したりする処理 */
22
+ echo"接続完了";
23
+ INSERT table (a, b, c) VALUES (1, 12, 100)
2
- INSERT...ON DUPLICATE KEY UPDATE
24
+ ON DUPLICATE KEY UPDATE
25
+ b = 20
26
+ , c = 200;
27
+
28
+
29
+ } catch (PDOException $e) {
30
+
31
+ // エラーが発生した場合は「500 Internal Server Error」でテキストとして表示して終了する
32
+ // - もし手抜きしたくない場合は普通にHTMLの表示を継続する
33
+ // - ここではエラー内容を表示しているが, 実際の商用環境ではログファイルに記録して, Webブラウザには出さないほうが望ましい
34
+ header('Content-Type: text/plain; charset=UTF-8', true, 500);
35
+ exit($e->getMessage());
36
+
37
+ }
38
+
39
+ // Webブラウザにこれから表示するものがUTF-8で書かれたHTMLであることを伝える
40
+ // (これか <meta charset="utf-8"> の最低限どちらか1つがあればいい. 両方あっても良い.)
41
+ header('Content-Type: text/html; charset=utf-8');
42
+
43
+ ?>
44
+ <!DOCTYPE html>
45
+ <html>
46
+ <head>
47
+ <meta charset="utf-8">
48
+ <title>Example</title>
49
+ </head>
50
+ <body>
3
- のデータベースへの接続方法がよわかりません。宜くお願します❗
51
+ <!-- ここではHTMLを書以外のことは一切 -->
52
+ </body>
53
+ </html>
54
+ ```
55
+ ###エラー内容
56
+ Parse error: syntax error, unexpected 'table' (T_STRING) in /www/PHP/bigData/index.php on line 20
4
57
  [参考資料](https://dev.mysql.com/doc/refman/5.6/ja/insert-on-duplicate.html)
58
+ [参考資料2](http://qiita.com/mpyw/items/b00b72c5c95aac573b71)
5
59
  初心者ですいません。

1

参考サイトの記載。

2017/05/16 12:24

投稿

teityann1225
teityann1225

スコア158

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,5 @@
1
1
  ###教えてほしいこと
2
2
  INSERT...ON DUPLICATE KEY UPDATE
3
- 使い方がいまいちわかりません。
3
+ データベースへの接続よくわかりません。宜しくお願いします❗
4
- 使い方を教えて下さい!!
4
+ [参考資料](https://dev.mysql.com/doc/refman/5.6/ja/insert-on-duplicate.html)
5
5
  初心者ですいません。