CON012_2.php
3.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<?php
//*****************************************************************************
//*
//* プログラム名:資料フォルダDB設定処理(表示順位・削除)
//* プログラムID:CON012_2
//* 機能 :資料フォルダ情報をDB設定する
//* 作成者 :石田 英治
//*
//*****************************************************************************
header("Content-type: text/html; charset=EUC-JP");
include("include/session_start.inc");
include("include/SessionChk.inc");
include("include/dbcon.inc");
$strSiryoArray=split("/",$siryo);
$strSiryoCode=$strSiryoArray[0];
$strSiryoName=$strSiryoArray[1];
//表示順位の最大値、最小値を取得
$strSql = "SELECT MAX(disp_rank) as maxValue,MIN(disp_rank) as minValue FROM mst_siryo";
$rsResult = pg_exec($pg_con,$strSql);
$intDispRankMaxValue = pg_result($rsResult,0,"maxValue");
$intDispRankMinValue = pg_result($rsResult,0,"minValue");
switch ($up_down_flg) {
case "up":
//選択された資料フォルダのレコードを抽出
$strSql = "SELECT ctg_no,ctg_name,disp_rank FROM mst_siryo WHERE ctg_no=$strSiryoCode";
$rsResult = pg_exec($pg_con,$strSql);
//最小値の場合処理なし
if (pg_result($rsResult,0,"disp_rank")==$intDispRankMinValue) {
break;
}
//資料フォルダマスタの全レコード抽出
$strSql = "SELECT ctg_no,ctg_name,disp_rank FROM mst_siryo ORDER BY disp_rank";
$rsResult2 = pg_exec($pg_con,$strSql);
$intRsCnt = pg_numrows($rsResult2);
for ($i = 1 ; $i <= $intRsCnt-1 ; $i++) {
if (pg_result($rsResult,0,"disp_rank") == pg_result($rsResult2,$i,"disp_rank")) {
$intDispWork = pg_result($rsResult2,$i-1,"disp_rank"); //1つ前レコードの表示順位
$intSiryoWork = pg_result($rsResult2,$i,"ctg_no");
$strSqlUp = "UPDATE mst_siryo SET ";
$strSqlUp .= "disp_rank= $intDispWork ";
$strSqlUp .= "WHERE ctg_no = $intSiryoWork";
$intDispWork = pg_result($rsResult2,$i,"disp_rank");
$intSiryoWork = pg_result($rsResult2,$i-1,"ctg_no");
$strSqlDown = "UPDATE mst_siryo SET ";
$strSqlDown .= "disp_rank = $intDispWork ";
$strSqlDown .= "WHERE ctg_no = $intSiryoWork";
$rsResult = pg_exec($pg_con,$strSqlUp);
$rsResult = pg_exec($pg_con,$strSqlDown);
break;
}
}
break;
case "down":
//選択された部門のレコードを抽出
$strSql = "SELECT ctg_no,ctg_name,disp_rank FROM mst_siryo WHERE ctg_no=$strSiryoCode";
$rsResult = pg_exec($pg_con,$strSql);
//最大値の場合処理なし
if (pg_result($rsResult,0,"disp_rank")==$intDispRankMaxValue) {
break;
}
//部門マスタの全レコード抽出
$strSql = "SELECT ctg_no,ctg_name,disp_rank FROM mst_siryo ORDER BY disp_rank";
$rsResult2 = pg_exec($pg_con,$strSql);
$intRsCnt = pg_numrows($rsResult2);
for ($i = 0 ; $i <= $intRsCnt-2 ; $i++) {
if (pg_result($rsResult,0,"disp_rank") == pg_result($rsResult2,$i,"disp_rank")) {
$intDispWork = pg_result($rsResult2,$i+1,"disp_rank"); //1つ後レコードの表示順位
$intSiryoWork = pg_result($rsResult2,$i,"ctg_no");
$strSqlUp = "UPDATE mst_siryo SET ";
$strSqlUp .= "disp_rank= $intDispWork ";
$strSqlUp .= "WHERE ctg_no = $intSiryoWork";
$intDispWork = pg_result($rsResult2,$i,"disp_rank");
$intSiryoWork = pg_result($rsResult2,$i+1,"ctg_no");
$strSqlDown = "UPDATE mst_siryo SET ";
$strSqlDown .= "disp_rank = $intDispWork ";
$strSqlDown .= "WHERE ctg_no = $intSiryoWork";
$rsResult = pg_exec($pg_con,$strSqlUp);
$rsResult = pg_exec($pg_con,$strSqlDown);
break;
}
}
break;
case "dell":
$strSql = "DELETE FROM mst_siryo WHERE ctg_no=$strSiryoCode";
$rsResult = pg_exec($pg_con,$strSql);
break;
}
header("Location: CON012.php");
?>