質問編集履歴
1
文字数圧縮
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
HELP! おしえて下さい。
|
2
2
|
|
3
3
|
|
4
4
|
|
@@ -14,17 +14,17 @@
|
|
14
14
|
|
15
15
|
ソースのデータ取得部《 $stmt = $db->query("SELECT ... WHERE ... 》
|
16
16
|
|
17
|
-
で、WHERE を使用したいのですが、
|
17
|
+
で、WHERE を使用したいのですが、意図した動作となりません。
|
18
|
-
|
19
|
-
|
20
|
-
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
-
《 if (isset($_GET["func"]) && $_GET["func"] ==
|
21
|
+
それは、《 if (isset($_GET["func"]) && $_GET["func"] == ... 》
|
22
22
|
|
23
23
|
以降で、変数渡しが不能のようで、別ページのsubmitボタンで値を
|
24
24
|
|
25
|
-
送信し、それをTOP部の《 $_GET['InPass'] 》などで受け、
|
25
|
+
送信し、それをTOP部の《 $_GET['InPass'] 》などで受け、条件指定で
|
26
|
-
|
26
|
+
|
27
|
-
|
27
|
+
テーブル参照し、表示、編集させたいのですが、...
|
28
28
|
|
29
29
|
|
30
30
|
|
@@ -32,13 +32,13 @@
|
|
32
32
|
|
33
33
|
渡らず、固定値(例えば、'HK1640')などでは、WHERE の条件が機能し、
|
34
34
|
|
35
|
-
|
35
|
+
意図した結果が得られるのですが、...
|
36
36
|
|
37
37
|
|
38
38
|
|
39
39
|
また、別ページからの値は、《 if (isset($_GET["func"]) && ...》
|
40
40
|
|
41
|
-
直前の《 print $InPass; 》では
|
41
|
+
直前の《 print $InPass; 》では意図した通りの結果が得られます。
|
42
42
|
|
43
43
|
|
44
44
|
|
@@ -52,10 +52,10 @@
|
|
52
52
|
|
53
53
|
|
54
54
|
|
55
|
+
```ここに言語を入力
|
56
|
+
|
55
57
|
<?php
|
56
58
|
|
57
|
-
|
58
|
-
|
59
59
|
if(isset($_GET['InPass'])) {
|
60
60
|
|
61
61
|
$InPass = $_GET['InPass'];
|
@@ -66,16 +66,12 @@
|
|
66
66
|
|
67
67
|
}
|
68
68
|
|
69
|
-
|
70
|
-
|
71
69
|
?>
|
72
70
|
|
73
71
|
|
74
72
|
|
75
73
|
<?php
|
76
74
|
|
77
|
-
|
78
|
-
|
79
75
|
$dsn = 'sqlsrv:server=XXXXXXXX;database=XXXXX';
|
80
76
|
|
81
77
|
$user = 'XXX';
|
@@ -84,18 +80,12 @@
|
|
84
80
|
|
85
81
|
$db = new PDO($dsn, $user, $password);
|
86
82
|
|
87
|
-
|
88
|
-
|
89
|
-
$columns = "Jcode varchar(20) PRIMARY KEY, Scode varchar(13) PRIMARY KEY, Name varchar(20), SaCode tinyint, SaName varchar(12), KJkyu money, JWarimasi money, SWarimasi money, HWarimasi money, YWarimasi money, DWarimasi money, Koutsu money, Sdatetime datetime" ;
|
90
|
-
|
91
|
-
|
83
|
+
$columns = "Jcode varchar(20) PRIMARY KEY, Scode varchar(13) PRIMARY KEY, Name varchar(20), SaCode tinyint, SaName varchar(12), KJkyu money, JWarimasi money, SWarimasi money, HWarimasi money, YWarimasi money, DWarimasi money, Koutsu money, Sdatetime datetime" ;
|
92
84
|
|
93
85
|
$db->exec("CREATE TABLE IF NOT EXISTS TM_webJikyu ($columns)");
|
94
86
|
|
95
87
|
|
96
88
|
|
97
|
-
|
98
|
-
|
99
89
|
/**************/
|
100
90
|
|
101
91
|
/* データ取得部 */
|
@@ -106,38 +96,24 @@
|
|
106
96
|
|
107
97
|
//print $InPass;
|
108
98
|
|
109
|
-
|
110
|
-
|
111
99
|
if (isset($_GET["func"]) && $_GET["func"] == "get_data") {
|
112
100
|
|
113
|
-
|
114
|
-
|
115
101
|
//$InPass = 'HK1640';
|
116
102
|
|
117
103
|
|
118
104
|
|
119
105
|
$stmt = $db->query("SELECT pass_master.Pass, TM_webJikyu.SaCode, TM_webJikyu.Scode, TM_webJikyu.* FROM pass_master INNER JOIN TM_webJikyu ON pass_master.id = TM_webJikyu.Jcode WHERE pass_master.Pass='$InPass' ORDER BY TM_webJikyu.SaCode, TM_webJikyu.Scode;");
|
120
106
|
|
121
|
-
|
122
|
-
|
123
107
|
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
124
108
|
|
125
|
-
|
126
|
-
|
127
109
|
$json = json_encode($rows);
|
128
110
|
|
129
|
-
|
130
|
-
|
131
111
|
echo $json;
|
132
112
|
|
133
|
-
|
134
|
-
|
135
113
|
exit();
|
136
114
|
|
137
115
|
|
138
116
|
|
139
|
-
|
140
|
-
|
141
117
|
/*********************************/
|
142
118
|
|
143
119
|
/* データ更新部(削除、変更)*/
|
@@ -146,8 +122,6 @@
|
|
146
122
|
|
147
123
|
} else if (isset($_POST["func"]) && $_POST["func"] == "upd_data") {
|
148
124
|
|
149
|
-
|
150
|
-
|
151
125
|
// データ受取
|
152
126
|
|
153
127
|
$delid = $_POST["delid"];
|
@@ -158,22 +132,14 @@
|
|
158
132
|
|
159
133
|
$upddata = json_decode($upddata, true);
|
160
134
|
|
161
|
-
|
162
|
-
|
163
135
|
// トランザクション開始
|
164
136
|
|
165
137
|
$db->beginTransaction();
|
166
138
|
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
139
|
// データ削除
|
172
140
|
|
173
141
|
if ($delid) {
|
174
142
|
|
175
|
-
|
176
|
-
|
177
143
|
for ($i=0; $i<count($delid); $i++) {
|
178
144
|
|
179
145
|
$sql = "DELETE FROM TM_webJikyu WHERE (((Jcode)=?) AND ((Scode)=?)) ";
|
@@ -182,29 +148,17 @@
|
|
182
148
|
|
183
149
|
$stmt->execute(array(1,$delid[$i]["Jcode"], $delid[$i]["Scode"]));
|
184
150
|
|
185
|
-
|
186
|
-
|
187
151
|
}
|
188
152
|
|
189
153
|
}
|
190
154
|
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
155
|
// データ変更
|
196
156
|
|
197
157
|
if ($upddata) {
|
198
158
|
|
199
|
-
|
200
|
-
|
201
159
|
for ($i=0; $i<count($upddata); $i++) {
|
202
160
|
|
203
|
-
|
204
|
-
|
205
|
-
|
161
|
+
$sql = "UPDATE TM_webJikyu SET KJkyu=? WHERE (((Jcode)=?) AND ((Scode)=?))";
|
206
|
-
|
207
|
-
|
208
162
|
|
209
163
|
$stmt = $db->prepare($sql);
|
210
164
|
|
@@ -212,50 +166,32 @@
|
|
212
166
|
|
213
167
|
$upddata[$i]["KJkyu"],
|
214
168
|
|
215
|
-
|
216
|
-
|
217
169
|
$upddata[$i]["Jcode"],
|
218
170
|
|
219
171
|
$upddata[$i]["Scode"]));
|
220
172
|
|
221
|
-
|
222
|
-
|
223
173
|
}
|
224
174
|
|
225
175
|
}
|
226
176
|
|
227
177
|
|
228
178
|
|
229
|
-
|
230
|
-
|
231
179
|
// トランザクション終了
|
232
180
|
|
233
181
|
$db->commit();
|
234
182
|
|
235
183
|
exit();
|
236
184
|
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
185
|
}
|
242
186
|
|
243
|
-
|
244
|
-
|
245
187
|
$db = null;
|
246
188
|
|
247
189
|
|
248
190
|
|
249
|
-
|
250
|
-
|
251
191
|
?>
|
252
192
|
|
253
193
|
|
254
194
|
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
195
|
<!doctype html>
|
260
196
|
|
261
197
|
<html>
|
@@ -264,98 +200,62 @@
|
|
264
200
|
|
265
201
|
|
266
202
|
|
267
|
-
|
268
|
-
|
269
203
|
<!-- スクリプト部分 -->
|
270
204
|
|
271
205
|
<script type="text/javascript">
|
272
206
|
|
273
|
-
|
274
|
-
|
275
207
|
var Ajax = new XMLHttpRequest();
|
276
208
|
|
277
|
-
|
278
|
-
|
279
209
|
// 削除対象IDを格納する配列
|
280
210
|
|
281
211
|
var delid = [];
|
282
212
|
|
283
|
-
|
284
|
-
|
285
213
|
// 変更データを格納する配列
|
286
214
|
|
287
215
|
var upddata = [];
|
288
216
|
|
289
|
-
|
290
|
-
|
291
217
|
// 新規登録データを格納する配列
|
292
218
|
|
293
219
|
var insdata = [];
|
294
220
|
|
295
|
-
|
296
|
-
|
297
221
|
window.onload = getSample;
|
298
222
|
|
299
223
|
|
300
224
|
|
301
|
-
|
302
|
-
|
303
225
|
/************/
|
304
226
|
|
305
227
|
/* 一覧表示部 */
|
306
228
|
|
307
229
|
/************/
|
308
230
|
|
309
|
-
|
310
|
-
|
311
231
|
function getSample() {
|
312
232
|
|
313
|
-
|
314
|
-
|
315
233
|
var rows, row, i, out;
|
316
234
|
|
317
|
-
|
318
|
-
|
319
235
|
//コメント追加
|
320
236
|
|
321
237
|
out="";
|
322
238
|
|
323
|
-
|
324
|
-
|
325
239
|
var url = "http://1.1.1.1/page1.php" + "?dummy=" + new Date().getTime() + "&func=" + "get_data";
|
326
240
|
|
327
|
-
|
328
|
-
|
329
241
|
Ajax.open("GET", url, true);
|
330
242
|
|
331
|
-
|
332
|
-
|
333
243
|
Ajax.send(null);
|
334
244
|
|
335
|
-
|
336
|
-
|
337
245
|
Ajax.onreadystatechange = function() {
|
338
246
|
|
339
|
-
|
340
|
-
|
341
247
|
if (Ajax.readyState == 4 && Ajax.status == 200) {
|
342
248
|
|
343
|
-
|
344
|
-
|
345
249
|
out += '<p>';
|
346
250
|
|
347
251
|
out += '<th><font size="6">時給マスタ登録</font></th>';
|
348
252
|
|
349
253
|
out += '</p>';
|
350
254
|
|
351
|
-
|
352
|
-
|
353
255
|
out += '<p>';
|
354
256
|
|
355
257
|
out += '<table style="text-align: left;" border="0" cellpadding="2" cellspacing="2">';
|
356
258
|
|
357
|
-
|
358
|
-
|
359
259
|
out += '<td><button type="button" onClick="Upd();" style="width:120px;font-size:18;">'+"更 新"+'</button></td>';
|
360
260
|
|
361
261
|
out += '<td style="width: 200px; text-align: right;"><button type="button" onClick="Upd();" style="width:120px;font-size:18;color:red;">'+"削 除"+'</button></td>';
|
@@ -364,12 +264,8 @@
|
|
364
264
|
|
365
265
|
out += '</p>';
|
366
266
|
|
367
|
-
|
368
|
-
|
369
267
|
out += '<table border="1" id="sampletb">';
|
370
268
|
|
371
|
-
|
372
|
-
|
373
269
|
out += '<tr>';
|
374
270
|
|
375
271
|
out += '<th bgcolor=silver ><font Color="black">削除</th>';
|
@@ -382,56 +278,34 @@
|
|
382
278
|
|
383
279
|
out += '<th bgcolor=silver width="110"><font size="2">基本時間給</th>';
|
384
280
|
|
385
|
-
|
386
|
-
|
387
281
|
out += '</tr>';
|
388
282
|
|
389
|
-
|
390
|
-
|
391
283
|
res = Ajax.responseText;
|
392
284
|
|
393
|
-
|
394
|
-
|
395
285
|
if (res) {
|
396
286
|
|
397
|
-
|
398
|
-
|
399
287
|
var rows = JSON.parse(res);
|
400
288
|
|
401
|
-
|
402
|
-
|
403
289
|
for (i in rows) {
|
404
290
|
|
405
291
|
out += '<tr>';
|
406
292
|
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
293
|
//削除flg
|
412
294
|
|
413
295
|
out += '<td><input type="checkbox" id="'+i+':0" onClick="delCheck(this)";></td>';
|
414
296
|
|
415
|
-
|
416
|
-
|
417
297
|
//事業所名
|
418
298
|
|
419
299
|
out += '<td><input type="text" readonly style="width:130px; background-color:#d3d3d3;" id="'+i+':1" value="'+rows[i]["Jcode"]+'" ></td>';
|
420
300
|
|
421
|
-
|
422
|
-
|
423
301
|
//社員コード
|
424
302
|
|
425
303
|
out += '<td><input type="text" readonly style="width:70px; background-color:#d3d3d3;" id="'+i+':2" value="'+rows[i]["Scode"]+'"></td>';
|
426
304
|
|
427
|
-
|
428
|
-
|
429
305
|
//社員名
|
430
306
|
|
431
307
|
out += '<td><input type="text" readonly style="width:150px; background-color:#d3d3d3;" id="'+i+':3" value="'+rows[i]["Name"]+'"></td>';
|
432
308
|
|
433
|
-
|
434
|
-
|
435
309
|
//基本時間給
|
436
310
|
|
437
311
|
if (rows[i]["KJkyu"] == null || rows[i]["KJkyu"] == '') {
|
@@ -444,30 +318,14 @@
|
|
444
318
|
|
445
319
|
}
|
446
320
|
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
321
|
out += '</tr>';
|
454
322
|
|
455
|
-
|
456
|
-
|
457
|
-
}
|
323
|
+
}
|
458
|
-
|
459
|
-
|
460
324
|
|
461
325
|
}
|
462
326
|
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
327
|
document.getElementById("result").innerHTML = out;
|
468
328
|
|
469
|
-
|
470
|
-
|
471
329
|
}
|
472
330
|
|
473
331
|
}
|
@@ -476,20 +334,14 @@
|
|
476
334
|
|
477
335
|
|
478
336
|
|
479
|
-
|
480
|
-
|
481
|
-
/********/
|
337
|
+
/**********/
|
482
338
|
|
483
339
|
/* 変更部 */
|
484
340
|
|
485
|
-
/********/
|
341
|
+
/**********/
|
486
|
-
|
487
|
-
|
488
342
|
|
489
343
|
function updCheck(e) {
|
490
344
|
|
491
|
-
|
492
|
-
|
493
345
|
e.parentNode.style.backgroundColor = 'darkgreen';
|
494
346
|
|
495
347
|
var row = e.id.substr(0, e.id.indexOf(":"));
|
@@ -498,8 +350,6 @@
|
|
498
350
|
|
499
351
|
var Scode = document.getElementById(row+':2').value;
|
500
352
|
|
501
|
-
|
502
|
-
|
503
353
|
var Name = document.getElementById(row+':3').value;
|
504
354
|
|
505
355
|
var SaCode = document.getElementById(row+':4').value;
|
@@ -510,48 +360,28 @@
|
|
510
360
|
|
511
361
|
|
512
362
|
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
363
|
// 最初の変更処理
|
518
364
|
|
519
365
|
if (upddata.length == 0) {
|
520
366
|
|
521
367
|
upddata.push({"Jcode":tid, "Scode":Scode, "Name":Name, "SaCode":SaCode, "SaName":SaName, "KJkyu":KJkyu, "JWarimasi":JWarimasi, "SWarimasi":SWarimasi, "HWarimasi":HWarimasi, "YWarimasi":YWarimasi, "DWarimasi":DWarimasi, "Koutsu":Koutsu, "Sdatetime":Td_date});
|
522
368
|
|
523
|
-
|
524
|
-
|
525
369
|
return;
|
526
370
|
|
527
371
|
}
|
528
372
|
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
373
|
// 2件目以降の変更処理
|
534
374
|
|
535
375
|
// 重複がある場合の変更処理
|
536
376
|
|
537
377
|
for (var i=0; i<upddata.length; i++) {
|
538
378
|
|
539
|
-
|
540
|
-
|
541
379
|
if ((upddata[i]["Jcode"] == tid) || (upddata[i]["Scode"] == Scode)) {
|
542
380
|
|
543
|
-
|
544
|
-
|
545
|
-
// 配列から除外
|
546
|
-
|
547
|
-
//upddata.splice(i, 1);
|
548
|
-
|
549
381
|
// 配列に追加
|
550
382
|
|
551
383
|
upddata.push({"Jcode":tid, "Scode":Scode, "Name":Name, "SaCode":SaCode, "SaName":SaName, "KJkyu":KJkyu, "JWarimasi":JWarimasi, "SWarimasi":SWarimasi, "HWarimasi":HWarimasi, "YWarimasi":YWarimasi, "DWarimasi":DWarimasi, "Koutsu":Koutsu, "Sdatetime":Td_date});
|
552
384
|
|
553
|
-
|
554
|
-
|
555
385
|
return;
|
556
386
|
|
557
387
|
}
|
@@ -562,46 +392,30 @@
|
|
562
392
|
|
563
393
|
upddata.push({"Jcode":tid, "Scode":Scode, "Name":Name, "SaCode":SaCode, "SaName":SaName, "KJkyu":KJkyu, "JWarimasi":JWarimasi, "SWarimasi":SWarimasi, "HWarimasi":HWarimasi, "YWarimasi":YWarimasi, "DWarimasi":DWarimasi, "Koutsu":Koutsu, "Sdatetime":Td_date});
|
564
394
|
|
565
|
-
|
566
|
-
|
567
|
-
|
568
|
-
|
569
395
|
}
|
570
396
|
|
571
397
|
|
572
398
|
|
573
|
-
|
574
|
-
|
575
|
-
/********/
|
399
|
+
/**********/
|
576
400
|
|
577
401
|
/* 削除部 */
|
578
402
|
|
579
|
-
/********/
|
403
|
+
/**********/
|
580
|
-
|
581
|
-
|
582
404
|
|
583
405
|
function delCheck(e) {
|
584
406
|
|
585
|
-
|
586
|
-
|
587
407
|
var tid = document.getElementById(e.id.replace(':0',':1')).value;
|
588
408
|
|
589
409
|
var Scode = document.getElementById(e.id.replace(':0',':2')).value;
|
590
410
|
|
591
|
-
|
592
|
-
|
593
411
|
// チェック入れたとき
|
594
412
|
|
595
413
|
if (e.checked == true) {
|
596
414
|
|
597
415
|
e.parentNode.parentNode.style.backgroundColor = 'crimson';
|
598
416
|
|
599
|
-
|
600
|
-
|
601
417
|
delid.push({"Jcode":tid, "Scode":Scode});
|
602
418
|
|
603
|
-
|
604
|
-
|
605
419
|
// チェック外したとき
|
606
420
|
|
607
421
|
} else if (e.checked == false) {
|
@@ -610,18 +424,12 @@
|
|
610
424
|
|
611
425
|
for (var i=0; i<delid.length; i++) {
|
612
426
|
|
613
|
-
|
614
|
-
|
615
427
|
if ((delid[i]["Jcode"] == tid) || (delid[i]["Scode"] == Scode)) {
|
616
428
|
|
617
|
-
|
618
|
-
|
619
429
|
delid.splice(i, 1);
|
620
430
|
|
621
431
|
delid.splice(i, 2);
|
622
432
|
|
623
|
-
|
624
|
-
|
625
433
|
}
|
626
434
|
|
627
435
|
}
|
@@ -632,62 +440,36 @@
|
|
632
440
|
|
633
441
|
|
634
442
|
|
635
|
-
|
636
|
-
|
637
|
-
/************/
|
443
|
+
/**************/
|
638
444
|
|
639
445
|
/* 更新処理部 */
|
640
446
|
|
641
|
-
/************/
|
447
|
+
/**************/
|
642
448
|
|
643
449
|
|
644
450
|
|
645
451
|
function Upd() {
|
646
452
|
|
647
|
-
|
648
|
-
|
649
|
-
|
650
|
-
|
651
453
|
delid2 = JSON.stringify(delid);
|
652
454
|
|
653
|
-
|
654
|
-
|
655
455
|
upddata2 = JSON.stringify(upddata);
|
656
456
|
|
657
|
-
|
658
|
-
|
659
457
|
insdata2 = JSON.stringify(insdata);
|
660
458
|
|
661
|
-
|
662
|
-
|
663
459
|
url = "http://1.1.1.1/page1.php";
|
664
460
|
|
665
|
-
|
666
|
-
|
667
|
-
Ajax.open("POST", url, true);
|
461
|
+
Ajax.open("POST", url, true);
|
668
|
-
|
669
|
-
|
670
|
-
|
462
|
+
|
671
|
-
Ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
|
463
|
+
Ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
|
672
|
-
|
673
|
-
|
674
|
-
|
464
|
+
|
675
|
-
Ajax.send("func=" + "upd_data" + "&delid=" + delid2 + "&upddata=" + upddata2 + "&insdata=" + insdata2);
|
465
|
+
Ajax.send("func=" + "upd_data" + "&delid=" + delid2 + "&upddata=" + upddata2 + "&insdata=" + insdata2);
|
676
|
-
|
677
|
-
|
678
|
-
|
466
|
+
|
679
|
-
Ajax.onreadystatechange = function() {
|
467
|
+
Ajax.onreadystatechange = function() {
|
680
|
-
|
681
|
-
|
682
468
|
|
683
469
|
if (Ajax.readyState == 4 && Ajax.status == 200) {
|
684
470
|
|
685
|
-
|
686
|
-
|
687
471
|
getSample();
|
688
472
|
|
689
|
-
|
690
|
-
|
691
473
|
// 配列初期化
|
692
474
|
|
693
475
|
delid.length=0;
|
@@ -696,20 +478,14 @@
|
|
696
478
|
|
697
479
|
insdata.length=0;
|
698
480
|
|
699
|
-
|
700
|
-
|
701
481
|
}
|
702
482
|
|
703
|
-
|
704
|
-
|
705
483
|
}
|
706
484
|
|
707
485
|
}
|
708
486
|
|
709
487
|
|
710
488
|
|
711
|
-
|
712
|
-
|
713
489
|
</script>
|
714
490
|
|
715
491
|
</head>
|
@@ -724,8 +500,6 @@
|
|
724
500
|
|
725
501
|
|
726
502
|
|
727
|
-
|
728
|
-
|
729
503
|
<?php
|
730
504
|
|
731
505
|
//クエリー結果の開放
|
@@ -739,3 +513,5 @@
|
|
739
513
|
sqlsrv_close($conn);
|
740
514
|
|
741
515
|
?>
|
516
|
+
|
517
|
+
```
|