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

回答編集履歴

1

加筆修正

2020/03/30 12:56

投稿

退会済みユーザー
answer CHANGED
@@ -5,4 +5,16 @@
5
5
 
6
6
  を駆使してプリペアドステートメントとして安全にクエリーに実行時パラメータを与える方法で組み直してください。
7
7
  その際、[ヒアドキュメント](https://www.php.net/manual/ja/language.types.string.php#language.types.string.syntax.heredoc)構文も駆使して、
8
- 読みやすいSQLクエリーにするとよいかと。
8
+ 読みやすいSQLクエリーにするとよいかと。
9
+
10
+ ```php
11
+ $sql = <<<EOT
12
+ SELECT TO_CHAR(y.yoyaku_date,'YYYY-FMMM-FMDD') AS yoyaku_date, s.sname, y.start_time, y.end_time
13
+ FROM tbl_4_2_1 AS y INNER JOIN tbl_4_2_2 AS s ON y.scode = s.scode
14
+ WHERE TO_DATE(y.yoyaku_date,'YYYY-MM')=TO_DATE($1,'YYYY-MM')
15
+ ORDER BY s.scode,y.start_time,y.end_time;
16
+ EOT;
17
+ $result = pg_prepare($con, 'query', $sql);
18
+ $result = pg_execute($con, 'query', array($year . '-' . $month));
19
+ ```
20
+ (あくまで机上のコードなので、エラーが出たらご指摘を。)