回答編集履歴

1

2重投稿の為、削除しました

2016/08/30 09:21

投稿

RhymeLight
RhymeLight

スコア12

test CHANGED
@@ -1,259 +1 @@
1
- ```PHP
2
-
3
- <html lang="ja">
4
-
5
- <head>
6
-
7
- <title></title>
8
-
9
- </head>
10
-
11
- <body>
12
-
13
-
14
-
15
- <?php
16
-
17
- // 接続設定(サーバ/データベース/ユーザ/パスワード)
18
-
19
- define("DBSV", "db_sv");
20
-
21
- define("DBNAME", "db_name");
22
-
23
- define("DBUSER", "hogehoge");
24
-
25
- define("DBPASS", "password");
26
-
27
-
28
-
29
- // 文字コード設定
30
-
31
- define("ENCDISP", "UTF-8"); //表示文字コード
32
-
33
- define("ENCDB", "UTF-8"); //データベース文字コード
34
-
35
-
36
-
37
- // 選択リストの値を取得
38
-
39
- $exprice = "price1";
40
-
41
- $exprice2 = "price2";
42
-
43
- //$val = $_POST["$exprice"];
44
-
45
- $val = "";
46
-
47
- $kekka = "";
48
-
49
-
50
-
51
- // データベースに接続
52
-
53
- $conn = conndb();
54
-
55
-
56
-
57
- if(isset($_POST['submit'])){
58
-
59
- // POSTで送信された通貨を取得
60
-
61
- $currency1 = $_POST["price1"]; # 変換元の通貨
62
-
63
- $currency2 = $_POST["price2"]; # 変換先の通貨
64
-
65
- //echo "<br />";
66
-
67
- //echo "変換元の通貨-> " . $currency1;
68
-
69
- //echo "<br />";
70
-
71
- //echo "変換先の通貨-> " . $currency2;
72
-
73
- //echo "<br />";
74
-
75
-
76
-
77
- // レートをデータベースから取得
78
-
79
- $result = mysql_query("SELECT $currency2 FROM exchange2 WHERE price = '$currency1'");
80
-
81
-
82
-
83
- $row = mysql_fetch_assoc($result);
84
-
85
- //print('<p>');
86
-
87
- //print('id='.$row["$currency2"]);
88
-
89
- // print(',name='.$row["$currency1"]);
90
-
91
- //print('</p>');
92
-
93
-
94
-
95
- // 入力された値とレートで計算して結果を求める
96
-
97
- $kekka = $_POST["yen"] * $row["$currency2"];
98
-
99
- }
100
-
101
-
102
-
103
- ?>
104
-
105
- <form method="POST" action="<?php echo $_SERVER["PHP_SELF"]?>">
106
-
107
- <table>
1
+ 2重投稿の為、削除しました
108
-
109
- <tr>
110
-
111
- <td><input type="text" name="yen" size="20" value="" />通貨を</td>
112
-
113
- <td><?php echo disp_list($conn, "exchange2", "price", "country", $val, $exprice); ?>から</td>
114
-
115
- <td><?php echo disp_list($conn, "exchange2", "price", "country", $val, $exprice2); ?>へ</td>
116
-
117
- <td><input type="submit" name='submit' value="変換"></td>
118
-
119
- </tr>
120
-
121
- </table>
122
-
123
- </form>
124
-
125
- <b>
126
-
127
-
128
-
129
- <?php
130
-
131
- // 結果を表示
132
-
133
- echo "$kekka";
134
-
135
- ?>
136
-
137
- </b>
138
-
139
-
140
-
141
- </body>
142
-
143
- </html>
144
-
145
-
146
-
147
- <?php
148
-
149
- // データベース接続の解除
150
-
151
- closedb($conn);
152
-
153
- ?>
154
-
155
- <?php
156
-
157
-
158
-
159
- //------------------------------
160
-
161
- // 関数
162
-
163
- //------------------------------
164
-
165
-
166
-
167
- // 選択リストを出力する関数
168
-
169
- // パラメータ:接続/テーブル名/リスト値/表示値/選択値/リスト名
170
-
171
- function disp_list($conn, $table, $value, $text, $selected_value = "", $m_name) {
172
-
173
- // DBから製品情報を取り出す
174
-
175
- $sql = "SELECT * FROM " . $table . " ASC" . $value;
176
-
177
- $res = mysql_query($sql, $conn) or die("データが取得できませんでした");
178
-
179
-
180
-
181
- // 取り出した製品情報をプルダウンリストに表示する
182
-
183
- echo "<select name=\"" . $m_name . "\">";
184
-
185
- while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) {
186
-
187
- echo "<option ";
188
-
189
- if ($selected_value == $row[$value]) {
190
-
191
- echo " selected ";
192
-
193
- }
194
-
195
- echo " value=\"".$row[$value]."\">";
196
-
197
- echo cnv_dispstr($row[$text])."</option>";
198
-
199
- }
200
-
201
- echo "</select>";
202
-
203
- }
204
-
205
-
206
-
207
- // DB接続
208
-
209
- function conndb() {
210
-
211
- $conn = mysql_connect(DBSV, DBUSER, DBPASS) or die("DBに接続できませんでした");
212
-
213
- mysql_select_db(DBNAME) or die("DBに接続できませんでした");
214
-
215
- return $conn;
216
-
217
- }
218
-
219
-
220
-
221
- // DB接続解除
222
-
223
- function closedb($conn) {
224
-
225
- mysql_close($conn);
226
-
227
- }
228
-
229
-
230
-
231
- // 表示用の文字コードに変換
232
-
233
- function cnv_dispstr($string) {
234
-
235
- //文字コードを変換
236
-
237
- $det_enc = mb_detect_encoding($string, ENCDB . ", " . ENCDISP);
238
-
239
- if ($det_enc and $det_enc != ENCDISP) {
240
-
241
- return mb_convert_encoding($string, ENCDISP, $det_enc);
242
-
243
- }
244
-
245
- else {
246
-
247
- return $string;
248
-
249
- }
250
-
251
- }
252
-
253
-
254
-
255
-
256
-
257
- ?>
258
-
259
- ```