File "constructions_edit.php"
Full path: /www/ansys/constructions/constructions_edit.php
File size: 15.44 KiB (15810 bytes)
MIME-type: text/x-php
Charset: utf-8
<?php
//-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
// 自動でクラスを参照する
// 関数名 : __autoload()
// 備考 : 参照先は./class/XXX.phpとする
// 更新 : 2012/10/19 KMK-Teraoka
//-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
function __autoload($className)
{
$fPath = "./class/" . str_replace("_", "/", $className) . ".php";
require_once $fPath;
}
//===============================================
// DEBUG_MODE
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
define("DEBUG_MODE", "0");
Debug::setMode(DEBUG_MODE);
if (DEBUG_MODE == 1)
{
Stopwatch::start();
}
//===============================================
// CommonUtilities
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
$PENTA_OCEAN = "五洋建設株式会社";
$TAIL_PENTA_OCEAN = "penta-ocean";
$SCRIPT_TITLE = "アンドロイドシステム 工事管理";
$LIST_FORM = "./constructions_list.php";
$EDIT_FORM = "./constructions_edit.php";
$VIEW_FORM = "./constructions_view.php";
$DELETE_FORM = "./constructions_delete.php";
$CREATE_FORM = "./constructions_create.php";
$HOST = "192.168.100.153";
$DB = "ansys";
$USER = "postgres";
$PASS = "am#71ZJ*";
$CONSTRUCTION_TABLE = "apc_common.constructions";
$VIEW_LIST = array(
"0" => array("head" => "工事ID", "object" => "const_id", "type" => "0", "control" => "-"),
"1" => array("head" => "工事名称", "object" => "const_name", "type" => "1", "control" => "txtConstName"),
"2" => array("head" => "工事開始日時", "object" => "start_at", "type" => "2", "control" => "txtStartAt"),
"3" => array("head" => "工事終了日時", "object" => "end_at", "type" => "2", "control" => "txtEndAt"),
"4" => array("head" => "備考", "object" => "remarks", "type" => "1", "control" => "txtRemarks"),
"5" => array("head" => "更新日時", "object" => "upddatetime", "type" => "3", "control" => "-"),
);
//===============================================
// HTML-HEAD-
// 備考 :
// 更新 : 2012/10/18 KMK-Teraoka
//===============================================
print "<html>";
print "<head>";
print "<meta http-equiv=\"content-type\" content=\"text/html;charset=utf-8\">";
print "<link rel=\"stylesheet\" type=\"text/css\" href=\"/ansys/config/css/style.css\">";
print "<link rel=\"shortcut icon\" href=\"/ansys/config/favicon.ico\">";
print "<title>". $SCRIPT_TITLE. "</title>";
print "</head>";
//===============================================
// HTML-BODY部開始-
// 備考 :
// 更新 : 2012/10/18 KMK-Teraoka
//===============================================
print "<body>";
print "<center>";
print "<font size=\"3\">";
print "<b>";
print "". $SCRIPT_TITLE. "<br>";
print "【". $PENTA_OCEAN. "】";
print "</b>";
print "</font>";
print "</center>";
print "<hr />";
try
{
//================================================
// データベース接続
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//================================================
$conn = pg_connect("
host = ". $HOST. "
dbname = ". $DB. "
user = ". $USER. "
password= ". $PASS. "
");
if (!$conn)
{
throw new Exception("データベースへの接続に失敗しました");
}
//===============================================
// POST、GETパラメータの受け取り
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
if (DEBUG_MODE == 1)
{
extract($_POST);
extract($_GET);
Debug::writes($_POST);
}
$editId = isset($_POST["editId"]) ? htmlspecialchars($_POST["editId"]) : "";
if (strcmp($editId, "") == 0)
{
throw new Exception("工事IDが指定されていません");
}
$selSearch = isset($_POST["selSearch"]) ? htmlspecialchars($_POST["selSearch"]) : "";
$txtSearchObj = isset($_POST["txtSearchObj"]) ? htmlspecialchars($_POST["txtSearchObj"]) : "";
$viewPage = isset($_POST["hPage"]) ? htmlspecialchars($_POST["hPage"]) : 1;
$btnUpdate = isset($_POST["btnUpdate"]) ? htmlspecialchars($_POST["btnUpdate"]) : "";
if (strcmp($btnUpdate, "更新") == 0)
{
// 更新SQL
$updConstName = isset($_POST["updConstName"]) ? htmlspecialchars($_POST["updConstName"]) : "";
if (strcmp($updConstName, "") == 0)
{
throw new Exception("工事名が入力されていません");
}
$updStartAt = isset($_POST["updStartAt"]) ? htmlspecialchars($_POST["updStartAt"]) : "";
$updEndAt = isset($_POST["updEndAt"]) ? htmlspecialchars($_POST["updEndAt"]) : "";
$updRemarks = isset($_POST["updRemarks"]) ? htmlspecialchars($_POST["updRemarks"]) : "";
$updData = "UPDATE ". $CONSTRUCTION_TABLE. " SET";
$updData .= " const_name='". $updConstName. "'";
$updData .= ", start_at='". $updStartAt. "'";
$updData .= ", end_at='". $updEndAt. "'";
$updData .= ", remarks='". $updRemarks. "'";
$updData .= ", upddatetime=current_timestamp";
$updData .= " WHERE const_id='". $editId. "'";
$updData .= ";";
Debug::write($updData);
if (!(pg_query($conn, $updData)))
{
throw new Exception("ID:[". $editId. "]のデータ更新に失敗しました<br />". $updData. "<br />". pg_last_error(). "<br />");
}
$mgrMsg = "工事ID[". $editId. "]のデータを更新しました<br />";
}
else if (strcmp($btnUpdate, "確認") == 0)
{
$txtConstName = isset($_POST["txtConstName"]) ? htmlspecialchars($_POST["txtConstName"]) : "";
if (strcmp($txtConstName, "") == 0)
{
throw new Exception("工事名が入力されていません");
}
$txtStartAt_y = isset($_POST["txtStartAt_y"]) ? htmlspecialchars($_POST["txtStartAt_y"]) : "";
$txtStartAt_m = isset($_POST["txtStartAt_m"]) ? htmlspecialchars($_POST["txtStartAt_m"]) : "";
$txtStartAt_d = isset($_POST["txtStartAt_d"]) ? htmlspecialchars($_POST["txtStartAt_d"]) : "";
$txtStartAt_h = isset($_POST["txtStartAt_h"]) ? htmlspecialchars($_POST["txtStartAt_h"]) : "";
$txtStartAt_i = isset($_POST["txtStartAt_i"]) ? htmlspecialchars($_POST["txtStartAt_i"]) : "";
$txtStartAt_s = isset($_POST["txtStartAt_s"]) ? htmlspecialchars($_POST["txtStartAt_s"]) : "";
$txtEndAt_y = isset($_POST["txtEndAt_y"]) ? htmlspecialchars($_POST["txtEndAt_y"]) : "";
$txtEndAt_m = isset($_POST["txtEndAt_m"]) ? htmlspecialchars($_POST["txtEndAt_m"]) : "";
$txtEndAt_d = isset($_POST["txtEndAt_d"]) ? htmlspecialchars($_POST["txtEndAt_d"]) : "";
$txtEndAt_h = isset($_POST["txtEndAt_h"]) ? htmlspecialchars($_POST["txtEndAt_h"]) : "";
$txtEndAt_i = isset($_POST["txtEndAt_i"]) ? htmlspecialchars($_POST["txtEndAt_i"]) : "";
$txtEndAt_s = isset($_POST["txtEndAt_s"]) ? htmlspecialchars($_POST["txtEndAt_s"]) : "";
$txtRemarks = isset($_POST["txtRemarks"]) ? htmlspecialchars($_POST["txtRemarks"]) : "";
$confMode = 1;
$confValue = array(
"const_id" => "",
"const_name" => $txtConstName,
"start_at" => sprintf("%04d", $txtStartAt_y). "-". sprintf("%02d", $txtStartAt_m). "-". sprintf("%02d", $txtStartAt_d). " ". sprintf("%02d", $txtStartAt_h). ":". sprintf("%02d", $txtStartAt_i). ":". sprintf("%02d", $txtStartAt_s),
"end_at" => sprintf("%04d", $txtEndAt_y). "-". sprintf("%02d", $txtEndAt_m). "-". sprintf("%02d", $txtEndAt_d). " ". sprintf("%02d", $txtEndAt_h). ":". sprintf("%02d", $txtEndAt_i). ":". sprintf("%02d", $txtEndAt_s),
"remarks" => $txtRemarks,
"upddatetime" => ""
);
$mgrMsg = "下記内容で更新します<br />";
Debug::writes($confValue);
}
//===============================================
// WHERE句の作成
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
$whereObj = "";
$whereObj .= " WHERE const_id='". $editId. "'";
Debug::write($whereObj);
//===============================================
// 見出し
// 備考 : Table内TableでBorderを細くする
// 更新 : 2012/10/18 KMK-Teraoka
//===============================================
print "<table width=\"100%\" border=\"0\" bgcolor=\"#000000\" cellspacing=\"0\" cellpadding=\"0\">";
print "<tr>";
print "<td>";
print "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"3\">";
print "<tr bgcolor=\"#99CCFF\">";
print "<td align=\"left\">";
print "工事編集";
print "</td>";
print "</tr>";
print "</table>";
print "</td>";
print "</tr>";
print "</table>";
print "<br />";
//===============================================
// データの取得
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
$selData = "SELECT * FROM ". $CONSTRUCTION_TABLE;
if (strcmp($whereObj, "") != 0)
{
$selData .= $whereObj;
}
$selData .= ";";
Debug::write($selData);
if (!($resData = pg_query($conn, $selData)))
{
throw new Exception("ID:[". $editId. "]のデータ取得に失敗しました<br />". $selData. "<br />". pg_last_error(). "<br />");
}
$rowData = pg_fetch_array($resData, 0, PGSQL_ASSOC);
//===============================================
// 管理メッセージの表示
// 備考 :
// 更新 : 2012/10/18 KMK-Teraoka
//===============================================
print "<font color=\"#FF0000\">";
print $mgrMsg;
print "</font>";
//===============================================
// 一覧の表示
// 備考 :
// 更新 : 2012/10/18 KMK-Teraoka
//===============================================
print "<form action=\"". $_SERVER['PHP_SELF']. "\" method=\"post\" style=\"display:inline\">";
print "<table width=\"45%\" border=\"0\" bgcolor=\"#000000\" cellspacing=\"0\" cellpadding=\"0\">";
print "<tr>";
print "<td>";
print "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"3\">";
for($iCount = 0; $iCount < count($VIEW_LIST); $iCount++)
{
print "<tr bgcolor=\"#FFFFFF\" align=\"left\">";
print "<td bgcolor=\"#99CCFF\" style=\"width:30%;height:25px;\">";
print $VIEW_LIST[$iCount]["head"];
print "</td>";
print "<td bgcolor=\"#FFFFFF\" style=\"width:70%\">";
switch($VIEW_LIST[$iCount]["type"])
{
case 0:
print $rowData[$VIEW_LIST[$iCount]["object"]];
break;
case 1:
if ($confMode == 1)
{
print $confValue[$VIEW_LIST[$iCount]["object"]];
}
else
{
print "<input type=\"text\" name=\"". $VIEW_LIST[$iCount]["control"]. "\" value=\"". $rowData[$VIEW_LIST[$iCount]["object"]]. "\" style=\"width:100%\" id=\"text\">";
}
break;
case 2:
if ($confMode == 1)
{
print $confValue[$VIEW_LIST[$iCount]["object"]];
}
else
{
if (!($uTime = strtotime($rowData[$VIEW_LIST[$iCount]["object"]])))
{
throw new Exception("日付データの変換に失敗しました");
}
else
{
$dataTime = getdate($uTime);
}
print "<input type=\"text\" name=\"". $VIEW_LIST[$iCount]["control"]. "_y\" value=\"". $dataTime["year"]. "\" style=\"width:34px;ime-mode:inactive\" maxlength=\"4\" id=\"text\">";
print "-";
print "<input type=\"text\" name=\"". $VIEW_LIST[$iCount]["control"]. "_m\" value=\"". $dataTime["mon"]. "\" style=\"width:21px;ime-mode:inactive\" maxlength=\"2\" id=\"text\">";
print "-";
print "<input type=\"text\" name=\"". $VIEW_LIST[$iCount]["control"]. "_d\" value=\"". $dataTime["mday"]. "\" style=\"width:21px;ime-mode:inactive\" maxlength=\"2\" id=\"text\">";
print " ";
print "<input type=\"text\" name=\"". $VIEW_LIST[$iCount]["control"]. "_h\" value=\"". $dataTime["hours"]. "\" style=\"width:21px;ime-mode:inactive\" maxlength=\"2\" id=\"text\">";
print ":";
print "<input type=\"text\" name=\"". $VIEW_LIST[$iCount]["control"]. "_i\" value=\"". $dataTime["minutes"]. "\" style=\"width:21px;ime-mode:inactive\" maxlength=\"2\" id=\"text\">";
print ":";
print "<input type=\"text\" name=\"". $VIEW_LIST[$iCount]["control"]. "_s\" value=\"". $dataTime["seconds"]. "\" style=\"width:21px;ime-mode:inactive\" maxlength=\"2\" id=\"text\">";
}
break;
case 3:
if ($confMode == 1)
{
print $VIEW_LIST[$iCount]["control"];
}
else
{
print $rowData[$VIEW_LIST[$iCount]["object"]];
}
break;
default:
throw new Exception("リストに存在しません");
break;
}
print "</td>";
print "</tr>";
}
print "</table>";
print "</td>";
print "</tr>";
print "</table>";
//===============================================
// 確認、登録ボタン
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
if ($confMode == 1)
{
print "<input type=\"submit\" name=\"btnUpdate\" value=\"更新\" style=\"width:60px\" id=\"submit_button\">";
print " ";
print "<input type=\"submit\" name=\"btnUpdate\" value=\"修正\" style=\"width:60px\" id=\"submit_button\">";
print "<input type=\"hidden\" name=\"updConstName\" value=\"". $confValue["const_name"]. "\">";
print "<input type=\"hidden\" name=\"updStartAt\" value=\"". $confValue["start_at"]. "\">";
print "<input type=\"hidden\" name=\"updEndAt\" value=\"". $confValue["end_at"]. "\">";
print "<input type=\"hidden\" name=\"updRemarks\" value=\"". $confValue["remarks"]. "\">";
print "<br />";
}
else
{
print "<input type=\"submit\" name=\"btnUpdate\" value=\"確認\" style=\"width:60px\" id=\"submit_button\">";
print "<br />";
}
print "<input type=\"hidden\" name=\"editId\" value=\"". $editId. "\">";
print "<input type=\"hidden\" name=\"selSearch\" value=\"". $selSearch. "\">";
print "<input type=\"hidden\" name=\"txtSearchObj\" value=\"". $txtSearchObj. "\">";
print "<input type=\"hidden\" name=\"hPage\" value=\"". $viewPage. "\">";
print "</form>";
print "<br />";
//===============================================
// 参照リンク
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
print "<form name=\"viewForm\" method=\"post\" action=\"". $VIEW_FORM. "\" style=\"display:inline\">";
print "<a href=\"javascript:viewForm.submit()\">参照</a>";
print "<input type=\"hidden\" name=\"editId\" value=\"". $editId. "\">";
print "<input type=\"hidden\" name=\"selSearch\" value=\"". $selSearch. "\">";
print "<input type=\"hidden\" name=\"txtSearchObj\" value=\"". $txtSearchObj. "\">";
print "<input type=\"hidden\" name=\"hPage\" value=\"". $viewPage. "\">";
print "</form>";
print " | ";
}
catch(Exception $exe)
{
print "<font color=\"#FF0000\">";
print "【スクリプトエラー】<br />";
print $exe->getMessage(). "<br />";
print "</font>";
}
//===============================================
// 一覧リンク
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
print "<form name=\"listForm\" method=\"post\" action=\"". $LIST_FORM. "\" style=\"display:inline\">";
print "<a href=\"javascript:listForm.submit()\">一覧</a>";
print "<input type=\"hidden\" name=\"selSearch\" value=\"". $selSearch. "\">";
print "<input type=\"hidden\" name=\"txtSearchObj\" value=\"". $txtSearchObj. "\">";
print "<input type=\"hidden\" name=\"hPage\" value=\"". $viewPage. "\">";
print "</form>";
//===============================================
// Postgresql終了処理
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
pg_close($conn);
//===============================================
// HTML終了処理
// 備考 :
// 更新 : 2012/10/19 KMK-Teraoka
//===============================================
print "<hr />";
print "<font size=\"3\" color=\"#000000\" face=\"Arial\">";
print "<center>";
print "<b>";
print "<i>";
print $TAIL_PENTA_OCEAN;
print "</i>";
print "</b>";
print "</center>";
print "</font>";
print "</body>";
print "</html>";
?>