/** * กำหนดคุณสมบัติของหน้าจอ มีตัวแปรที่ต้องกำหนดค่าคือ * $sql : คำสั่งเพื่อคัดข้อมูลจาก Table * $table : ชื่อ Table * $key_field : ชื่อ Field ที่เป็น PRIMARY * $my_form : Object เพื่อจัดการเกี่ยวกับ Form และข้อมูล * ตรวจสอบค่าใน config.inc.php มีค่าถูกต้อง */ function __construct() { parent::__construct(); /*$ajax = new OrAjax(); $this->set_script_src($ajax->OP_[ajax_src]->get()); $this->set_script($ajax->require_selectbox());*/ $this->set_skin_ccs("my_form.css"); /**กำหนดค่าตัวแปร ของหน้า**/ $sql = 'SELECT * FROM `my_sys` '; $my_sec = new OrSec(); /****************/ /**สร้าง Form กำหนด Control***/ $my_form = new OrDbFrmForm('my_form', $this->get_my_db(), 'my_sys', 'sys_id'); $my_form->OP_[list_page_url]->set('my_sys_list.php'); $my_form->OP_[column]->set(2); $my_form->set_controls(new OrDoJoTextbox('sys_id')); $my_form->controls[sys_id]->set_size(20, 50); $my_form->controls[sys_id]->set_clip('sys_id'); $my_form->set_controls(new OrSelectbox('any_use')); $my_form->controls[any_use]->OP_[option]->set(array('0 ระบุ' => 0, '1 ไม่ระบุ' => 1)); $opt = array(); $opt["0 ไม่มีสิทธิ์ใช้งาน"] = 0; $opt["1 สิทธิ์อ่านข้อมูล"] = 1; $opt["2 สิทธิ์อ่านเขียน"] = 2; $opt["3 สิทธิ์อ่านเขียนลบ"] = 3; $my_form->set_controls(new OrSelectbox('aut_user')); $my_form->controls[aut_user]->OP_[option]->set($opt); $my_form->set_controls(new OrSelectbox('aut_group')); $my_form->controls[aut_group]->OP_[option]->set($opt); $my_form->set_controls(new OrSelectbox('aut_any')); $my_form->controls[aut_any]->OP_[option]->set($opt); $my_form->set_controls(new OrSelectbox('aut_god')); $my_form->controls[aut_god]->OP_[option]->set(array('0 ไม่' => 0, '1 ใช่' => 1)); $my_form->set_controls(new OrDojoSelectbox('aut_can_from')); $my_form->controls[aut_can_from]->OP_[option]->set(array_merge(array('ไม่กำหนด' => ''), $my_sec->get_sys_list())); $my_form->controls[aut_can_from]->OP_[check_null]->set(false); $my_form->set_controls(new OrTextbox('title')); $my_form->controls[sys_id]->set_size(20, 50); $my_form->set_controls(new OrDojoTextarea('description')); $my_form->controls['description']->set_rowcol('3', '50'); //กำหนดจำนวนแถวที่ Row จำนวน $my_form->controls['description']->OP_[check_null]->set(false); $my_form->fetch_record($sql); if ($my_form->controls[any_use]->OP_[value]->get() == '0') { //$link = 'my_can.php?val_filter[sys_id]=' . $my_form->controls[sys_id]->OP_[value]->get() .'&val_msg[btn_filter]=Filter'; //$link = 'javascript:open("my_sys_list.php",null,"height=800,width=1000,status=yes,toolbar=no,menubar=yes,location=no");'; //$my_form->controls[any_use]->OP_[description]->set('<a href=\'' . $link . '\' ><img src="' . $this->get_skins_path("/image/button/link_about.png") . '" title="คลิกกำหนดผู้ใช้ระบบ"></a>'); $this->set_subpage('my_can_list.php?val_filter[sys_id]=' . $my_form->controls[sys_id]->OP_[value]->get() . '&val_compare[sys_id]==&val_msg[btn_filter]=Filter'); } $my_form->set_header($my_form->get_control_filter() . ' ' . $my_form->get_button_filter()); //$my_message = 'ข้อมูลต่างๆ ที่ต้องการแจ้ง ผู้ใช้ระบบ'; $this->set_form($my_form->get_tag($this->get_skins_path('form_button.html'))); $this->set_status($my_form->OP_[message]->get()); //TODO : version 2554 แจ้งใน my_form แทน $this->set_filter_msg($my_form->OP_[cmd_msg]->get()); //TODO : version 2554 แจ้งใน my_form แทน //$this->set_my_message( $my_message); //$this->set_footer($this->get_text('footer.inc')); $this->show(); }
/** * การใช้ Class my_page * * */ function __construct($title = '') { global $my_cfg; $my_sec = new OrSec(false); //$caption = 'ทดสอบ Caption'; $caption = $my_sec->OP_[title]->get(); debug_mode(__FILE__, __LINE__, $my_sec->OP_[title]->get(), 'Title'); if ($title == '') { $title .= $my_cfg[title] . ' : ' . $caption; } parent::__construct($title); //$this->set_ccs_src($my_cfg[skins_path] . 'my_page.css'); $this->set_skin($my_cfg[skins_path] . 'default.html'); //รูปแบบหน้าจอปกติ //$my_menu = new OrJsMenu('my_menu_utf8.inc.js' , $my_cfg[skins_path] . "xp.css"); //$this->set_ccs_src($my_menu->OP_[js_ccs]->get()); //$this->set_script_src($my_menu->OP_[js_src]->get()); //$my_calendar = new OrJsCalendar(); //$this->set_ccs_src($my_calendar->OP_[js_ccs]->get()); //$this->set_script_src($my_calendar->OP_[js_src]->get()); //$this->OP_[script_event_body]->set($my_menu->get_script_event('OnLoad')); /** * คำสั่งใช้ Ajax Copy ที่ต้องการใช้งาน * $ajax = new OrAjax(); * $this->set_script_src($ajax->OP_[ajax_src]->get()); * $this->set_script($ajax->require_tooltip()); * $this->set_ccs_src($ajax->require_tooltip_css()); */ $this->set_title($my_cfg[title]); $this->set_caption($caption); $link_logout = '<a href="welcome.php?val_controls[logout]=logout" >ออกจากระบบ</a>'; $this->set_login($my_sec->get_user_text() . '</b> [ <u>' . $my_sec->OP_[user]->get() . '</u> ]' . $link_logout); }
function __construct() { parent::__construct(); $this->set_skin_ccs("my_form.css"); /* * กำหนดคุณสมบัติของหน้าจอดังนี้ * $table : ชื่อ Table * $sql : คำสั่ง SQL * $key : ชื่อ Field ที่เป็น PRIMARY */ $table = 'my_can'; $sql = 'SELECT * FROM `' . $table . '` '; $key = array('sys_id', 'user'); $my_sec = new OrSec(); $user_list = $my_sec->get_user_list(); $sys_list = $my_sec->get_sys_list(); $clip_sys_id = new OrClip('sys_id'); $my_form = new OrDbFrmForm('my_form', $this->get_my_db(), $table, $key); $my_form->OP_[list_page_url]->set('my_can_list.php'); //$my_form->OP_[column]->set(2); /* * สร้าง Control ในฟอร์ม ประกอบด้วย Class ในกลุ่ม GUI */ $my_form->set_controls(new OrDojoTextSearch('sys_id')); $my_form->controls[sys_id]->OP_[default_value]->set($clip_sys_id->OP_[value]->get()); //$my_form->controls[sys_id]->OP_[option]->set($sys_list); $my_form->controls[sys_id]->OP_[popup_url]->set('my_sys_popup_list.php'); $my_form->set_controls(new OrDojoTextSearch('user')); //$my_form->controls['user']->OP_[option]->set($user_list); $my_form->controls[user]->OP_[popup_url]->set('my_user_popup_list.php'); $my_form->set_controls(new OrSelectbox('aut_to_group')); $my_form->controls['aut_to_group']->OP_[option]->set(array('ไม่มีสิทธิ์' => '0', 'ให้สิทธ์' => '1')); $my_form->set_controls(new OrTextarea('str_sql')); $my_form->controls['str_sql']->set_rowcol('5', '50'); //กำหนดจำนวนแถวที่ Row จำนวน $my_form->controls['str_sql']->OP_[check_null]->set(false); /* * ตัวอย่างการสร้าง controls textbox ความกว้าง 10 ฟิลด์ชื่อ name * $my_form->set_controls(new OrTextbox('name')); * $my_form->controls[name]->set_size(10); * เพิ่ม control ต่อไว้ด้านล่างนี้ */ /* * กระบวนการจัดการข้อมูลจากฐานข้อมูล */ $my_form->fetch_record($sql); /* * กำหนดส่วนหัวของฟอร์ม ปกติจะแสดงช่อง Filter สำหรับกรองข้อมูล */ $my_form->set_header('ค้นหา ' . $my_form->get_control_filter() . ' เรียง ' . $my_form->get_control_order() . ' ' . $my_form->get_button_filter()); /* * กำหนดฟอร์มลงในหน้า และแสดงหน้าจอ */ $this->set_form($my_form->get_tag()); $this->set_filter_msg($my_form->OP_[cmd_msg]->get()); $this->show(); }
public function __construct() { global $my_cfg; parent::__construct(); $this->set_ip_reg(); $this->set_skin($my_cfg[skins_path] . 'default_welcome.html'); //เรียกใช้รูปแบบหน้าจอ $this->set_caption($my_cfg[title]); $my_sec = new OrSec(false); $val_ = new OrSysvalue(); $val_controls = $val_->controls; if ($val_controls[login] == 'login') { $my_sec->login($val_controls[user], $val_controls[pass]); if ($my_sec->OP_[user]->get() == '') { header("Location:index.php"); } //แก้ไขในอนาคตให้ไปที่หน้าสมัครสมาชิกใหม่ } if ($val_controls[logout] == 'logout') { $my_sec->logout(); header("Location:index.php"); } if ($my_sec->OP_[user]->get() == '') { $my_form = new OrDojoForm('my_form'); $my_form->set_controls(new OrDojoTextbox('user')); $my_form->controls[user]->set_size(10); $my_form->set_controls(new OrDojoTextbox('pass')); $my_form->controls[pass]->set_size(10); $my_form->controls[pass]->OP_[type]->set('password'); $my_form->set_controls(new OrButton('login')); $my_form->set_skin($my_cfg[skins_path] . "frm_login.html"); $my_form->skin->set_skin_tag('user', $my_form->controls[user]->get_tag()); $my_form->skin->set_skin_tag('pass', $my_form->controls[pass]->get_tag()); $my_form->skin->set_skin_tag('login', $my_form->controls[login]->get_tag('login')); $my_form->set_body($my_form->skin->get_tag()); // $this->set_user_info('เข้าใช้ระบบ'); $this->set_login($my_form->get_tag()); $this->set_subpage($my_cfg[default_page_url]); } else { //header("Location:portal.php"); $link_logout = '<a href="welcome.php?val_controls[logout]=logout" >ออกจากระบบ</a>'; $this->set_user_info('ผู้ใช้ระบบ : ' . $my_sec->get_user_text()); $this->set_login($my_sec->get_user_text() . '</b> [ <u>' . $my_sec->OP_[user]->get() . '</u> ] ต้องการ ->' . $link_logout); $this->set_subpage($my_cfg[default_login_url]); //$this->set_login(' ผู้ใช้ระบบ '.$my_sec->get_user_text() . '</b> [ <u>' . $my_sec->OP_[user]->get() . '</u> ] '); } /* ส่วนแสดงข้อมูลหน้าจอแรก */ //$this->set_subpage('ฟอร์มข้อมูลหลัก'); /* รายการเมนูหลัก */ /* $src = "'http://www.facebook.com/'"; $this->set_leading('<a href="javascript:change_subpage_src('. $src . ')">ดูแลระบบ</a>'); */ $this->set_category_menu($my_cfg[menu_category]); $this->set_main_menu(); $this->show(); }
function __construct() { parent::__construct(); $this->set_skin_ccs("my_form.css"); $my_sec = new OrSec(); $user_list = $my_sec->get_user_list(); /* * กำหนดคุณสมบัติของหน้าจอดังนี้ * $table : ชื่อ Table * $sql : คำสั่ง SQL * $key : ชื่อ Field ที่เป็น PRIMARY */ $table = 'my_group'; $sql = 'SELECT * FROM `' . $table . '` '; $key = array('group', 'user'); $clip_user = new OrClip('user'); $my_form = new OrDbFrmForm('my_form', $this->get_my_db(), $table, $key); $my_form->OP_[list_page_url]->set('my_group_list.php'); $my_form->OP_[column]->set(3); /*$my_form->OE_[after_add]->set($my_cmd); $my_form->OE_[after_save]->set($my_cmd); $my_form->OE_[after_delete]->set($my_cmd);*/ /* * สร้าง Control ในฟอร์ม ประกอบด้วย Class ในกลุ่ม GUI */ //$my_form->set_controls(new OrLabel('id')); //$my_form->controls[id]->OP_[check_null]->set(false); /* * ตัวอย่างการสร้าง controls textbox ความกว้าง 10 ฟิลด์ชื่อ name * $my_form->set_controls(new OrTextbox('name')); * $my_form->controls[name]->set_size(10); * เพิ่ม control ต่อไว้ด้านล่างนี้ */ $my_form->set_controls(new OrSelectbox('group')); $my_form->controls[group]->OP_[option]->set($user_list); $my_form->set_controls(new OrSelectbox('user')); $my_form->controls['user']->OP_[default_value]->set($clip_user->OP_[value]->get()); $my_form->controls['user']->OP_[option]->set($user_list); $my_form->set_controls(new OrTextbox('description')); $my_form->controls[description]->set_size(20, 50); $my_form->controls[description]->OP_[check_null]->set(false); /* * กระบวนการจัดการข้อมูลจากฐานข้อมูล */ $my_form->fetch_record($sql); /* * กำหนดส่วนหัวของฟอร์ม ปกติจะแสดงช่อง Filter สำหรับกรองข้อมูล */ $my_form->set_header('ค้นหา ' . $my_form->get_control_filter() . ' เรียง ' . $my_form->get_control_order() . ' ' . $my_form->get_button_filter()); /* * กำหนดฟอร์มลงในหน้า และแสดงหน้าจอ */ $this->set_form($my_form->get_tag($this->get_skins_path('form_button.html'))); $this->set_filter_msg($my_form->OP_[cmd_msg]->get()); $this->show(); }
function save_record() { /* จัดการบันทึกแก้ไขในฐานข้อมูล */ $g_my_sec = new OrSec(); $EV_[EV_controls] = $this->val_controls[db_field]; $this->OE_before_save($EV_); $g_my_sec->OP_[sec_user]->set($this->get_sec_user()); $this->db->close_conn(); $sql = "UPDATE " . $this->db_table . " SET "; if (!$g_my_sec->can_save()) { die("ไม่มีสิทธิ์การบันทึกข้อมูล"); } /* จัดการค่าที่ได้รับจาก field ใน form */ /* กำหนดวิธี SAVE ใหม่ดูจาก controls แทน val_controls 16/6/2547 */ //$oop = new oop_function(); $i = 0; foreach ($this->controls as $id => $obj) { if ($this->is_OP($obj, "db_field")) { if ($obj->OP_[db_field]->get()) { if ($i > 0) { $db_values .= ","; } $db_values .= "`" . $id . "` = " . $this->get_sql_value($id); $i += 1; } } } //$sql_sec = " , `sec_ip` = '" . $g_my_sec->OP_[ip_remote]->get() . "' , `sec_time` = NOW() , `sec_script` = '" . $g_my_sec->OP_[script_name]->get() . "'"; $sql .= $db_values . $this->get_where_key() . ";"; //die("<b>debug</b> ".__FILE__." | ".__LINE__." | sql =".$sql."<br>"); $this->db->get_query($sql); if ($this->db->is_error()) { die('ไม่สามารถบันทึกข้อมูล ' . $this->db->show_error()); } $g_my_sec->activity(__LINE__ . ",แก้ไขข้อมูลตาม " . $sql . ",OK"); $EV_[EV_controls] = $this->val_controls[db_field]; $this->OE_after_save($EV_); return null; }