ADM1012.php 3.48 KB
<?PHP 
//*****************************************************************************
//* プログラム名:分類更新処理
//* プログラムID:ADM1012.php
//* 機能        :分類更新処理
//*****************************************************************************
header("Content-type: text/html; charset=EUC-JP");
include("./inc/session_start.inc");
include("./inc/SessionChk.inc");
include("./inc/dbcon.inc");

$mode = $_GET["mode"];
$seq = $_GET["seq"];
$bName = $_POST["bName"];
$bStart = $_POST["bStart"];
$bEnd = $_POST["bEnd"];

if($mode == "add"){
	//新規
	//seq設定
	$strSQL = "select * from bunrui_tbl order by bunrui_seq desc";
	$objRec = pg_exec($strSQL);
	if($objRec==false){
		echo("SQL実行に失敗しました(SELECT)");
		exit;
	}
	if(pg_numrows($objRec) > 0){
		$objData = pg_fetch_object($objRec, 0);
		$newSeq = $objData->bunrui_seq + 1;

		//disp_rank
//		$strSQL2 = "select * from bunrui_tbl order by disp_rank desc";
//		$objRec2 = pg_exec($strSQL2);
//		if($objRec2==false){
//			echo("SQL実行に失敗しました(SELECT)");
//			exit;
//		}
//		if(pg_numrows($objRec2) > 0){
//			$objData2 = pg_fetch_object($objRec2, 0);
//			$newRank = pg_numrows($objRec2) + 1;
//		}

	}else{
		$newSeq = 1;
		$newRank = 1;
	}
	//INSERT
	$strSQL  = "insert into bunrui_tbl (bunrui_seq, bunrui_name, bunrui_start, bunrui_end, disp_rank, tmp_no) ";
	$strSQL .= "values(".$newSeq.", '".$bName."', ".$bStart.", ".$bEnd.", 99, 0)";

	$objRec = pg_exec($strSQL);
	if($objRec==false){
		echo("SQL実行に失敗しました(INSERT)");
		exit;
	}

	//rank設定
	$strSQL = "select * from bunrui_tbl order by bunrui_start";
	$objRec = pg_exec($strSQL);
	if($objRec==false){
		echo("SQL実行に失敗しました(SELECT)");
		exit;
	}
	for($i=0; $i<pg_numrows($objRec); $i++){
		$objData = pg_fetch_object($objRec, $i);
		$bSeq = $objData->bunrui_seq;
		$newRank = $i + 1;
		
		$strSQL = "UPDATE bunrui_tbl SET disp_rank = ".$newRank." WHERE bunrui_seq = ".$bSeq." ";
		$objRec2 = pg_exec($strSQL);
		if($objRec2==false){
			echo("SQL実行に失敗しました(UPDATE)");
			exit;
		}
	}
}else if($mode == "edt"){
	//修正
	$strSQL = "update bunrui_tbl set bunrui_name = '".$bName."', bunrui_start = ".$bStart.", bunrui_end = ".$bEnd." where bunrui_seq = ".$seq;
	$objRec = pg_exec($strSQL);
	if($objRec==false){
		echo("SQL実行に失敗しました(UPDATE)");
		exit;
	}

}else if($mode == "up" || $mode == "down"){
	if($mode == "up"){				//上へ
		$addNum = -1;
	}else if($mode == "down"){		//下へ
		$addNum = 1;
	}
	//変更対象の表示順取得
	$strSQL = "select * from bunrui_tbl where bunrui_seq = ".$seq;
	$objRec = pg_exec($strSQL);
	if($objRec==false){
		echo("SQL実行に失敗しました(SELECT)");
		exit;
	}
	$objData = pg_fetch_object($objRec, 0);
	$newRank = $objData->disp_rank + $addNum;	//新しいdisp_rank
	$oldRank = $objData->disp_rank;				//いまのdisp_rank
	//変更対象の前or後のデータ取得
	$strSQL = "select * from bunrui_tbl where disp_rank = ".$newRank;
	$objRec = pg_exec($strSQL);
	if($objRec==false){
		echo("SQL実行に失敗しました(SELECT)");
		exit;
	}
	$objData = pg_fetch_object($objRec, 0);
	$frdSeq = $objData->bunrui_seq;
	//変更対象の前or後のデータ更新
	$strSQL = "update bunrui_tbl set disp_rank = ".$oldRank." where bunrui_seq = ".$frdSeq;
	$objRec = pg_exec($strSQL);
	if($objRec==false){
		echo("SQL実行に失敗しました(UPDATE)");
		exit;
	}
	//変更対象のデータ更新
	$strSQL = "update bunrui_tbl set disp_rank = ".$newRank." where bunrui_seq = ".$seq;
	$objRec = pg_exec($strSQL);
	if($objRec==false){
		echo("SQL実行に失敗しました(UPDATE)");
		exit;
	}

}

header("Location:./ADM1010.php");
exit;
?>