 |
|
เอ้าจัดไปเป็นของขวัญปีใหม่ละกัน ผมเห็นโพสต์ก่อนหน้านี้(https://www.thaicreate.com/php/forum/053186.html) เข้าใจว่ายังประยุกต์ไม่ได้
ผมลองจำลอง database ตัวอย่างนะครับ คุณก็ไปประยุกต์อีกที ถ้ายังไม่ได้เมล์มานะครับผมจะส่ง sourcecode ตัวอย่างไปให้
นี่ database relationship นะครับ (แต่ในโค้ดโปรแกรมผมไม่ได้ใช้ 1 ตารางคือ audit_point ให้คุณ insert/update เอาเองผมหาค่าออกมาให้แล้วครับ)

/* SQL Script ครับ
Navicat MySQL Data Transfer
Source Server : localhost
Source Server Version : 50067
Source Host : localhost:3306
Source Database : test
Target Server Type : MYSQL
Target Server Version : 50067
File Encoding : 65001
Date: 2010-12-18 18:02:25
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `audit_item`
-- ----------------------------
DROP TABLE IF EXISTS `audit_item`;
CREATE TABLE `audit_item` (
`item` varchar(1) NOT NULL default '',
`topic` varchar(255) default NULL,
PRIMARY KEY (`item`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-- ----------------------------
-- Records of audit_item
-- ----------------------------
INSERT INTO `audit_item` VALUES ('A', 'Audit Item A');
INSERT INTO `audit_item` VALUES ('B', 'Audit Item B');
INSERT INTO `audit_item` VALUES ('C', 'Audit Item C');
-- ----------------------------
-- Table structure for `audit_list`
-- ----------------------------
DROP TABLE IF EXISTS `audit_list`;
CREATE TABLE `audit_list` (
`audit_item` varchar(1) NOT NULL,
`audit_list` tinyint(1) NOT NULL,
`audit_details` varchar(255) default NULL,
PRIMARY KEY (`audit_item`,`audit_list`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-- ----------------------------
-- Records of audit_list
-- ----------------------------
INSERT INTO `audit_list` VALUES ('A', '1', 'Choice A1');
INSERT INTO `audit_list` VALUES ('A', '2', 'Choice A2');
INSERT INTO `audit_list` VALUES ('A', '3', 'Choice A3');
INSERT INTO `audit_list` VALUES ('A', '4', 'Choice A4');
INSERT INTO `audit_list` VALUES ('B', '1', 'Choice B1');
INSERT INTO `audit_list` VALUES ('B', '2', 'Choice B2');
INSERT INTO `audit_list` VALUES ('B', '3', 'Choice B3');
INSERT INTO `audit_list` VALUES ('B', '4', 'Choice B4');
INSERT INTO `audit_list` VALUES ('B', '5', 'Choice B5');
INSERT INTO `audit_list` VALUES ('C', '1', 'Choice C1');
INSERT INTO `audit_list` VALUES ('C', '2', 'Choice C2');
INSERT INTO `audit_list` VALUES ('C', '3', 'Choice C3');
INSERT INTO `audit_list` VALUES ('C', '4', 'Choice C4');
-- ----------------------------
-- Table structure for `audit_point`
-- ----------------------------
DROP TABLE IF EXISTS `audit_point`;
CREATE TABLE `audit_point` (
`iput_user` varchar(50) NOT NULL,
`audit_item` varchar(1) character set latin1 NOT NULL,
`check_value` char(1) NOT NULL default 'N',
PRIMARY KEY (`iput_user`,`audit_item`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of audit_point
-- ----------------------------
//********************** PHP Script ครับ ***********************************
Code (PHP)
<?php
session_start();
$conn = mysql_connect('localhost', 'root', '$123456789root$');
mysql_select_db('test', $conn);
if(isset($_POST['btnsubmit'])&& $_POST['btnsubmit']=='Audit'){
//ถ้ามีการ submit มาครับ
//echo "submit<br>";
$sql_audit_item="SELECT * FROM audit_item order by audit_item.item;";
$query_audit_item=mysql_query($sql_audit_item) or die("เปิดคิวรี่ $sql_audit_item ไม่ได้ <br>".mysql_error());
$num_row_item=mysql_num_rows($query_audit_item);
if($num_row_item>0){
while($item=mysql_fetch_array($query_audit_item)){
$sql_audit_list="SELECT * FROM audit_list Where audit_item='".$item['item']."' Order By audit_list ;";
$query_audit_list=mysql_query($sql_audit_list) or die("เปิดคิวรี่ $sql_audit_list ไม่ได้ <br>".mysql_error());
$num_row_list=mysql_num_rows($query_audit_list);
if($num_row_list>0){
$choice_item=true; //ให้ค่าตัวแปรเริ่มต้นเป็น true เพื่อไปทำการ วนลูปรายการย่อยมาเปรียบเทียบ
while($list=mysql_fetch_array($query_audit_list)){
echo $list['audit_item'].$list['audit_list']."=".$_POST[$list['audit_item'].$list['audit_list']]."<br>";
//ใส่ค่าตัวแปรโดยต้องเท่ากับ "Y" ทั้งหมดถึงจะเป็นจริงนะครับ
$choice_item=$choice_item && ($_POST[$list['audit_item'].$list['audit_list']]=="Y");
}
if($choice_item){ //ถ้าเป็น Y ทุกช้อยใน Item นี้
echo "<b>".$item['item']."=Yes</b><br>";
//*****************ใส่ข้อมูลเองนะในตาราง audit_poit กรณี True ************
} else {
echo "<b>".$item['item']."=No</b><br>";
//*****************ใส่ข้อมูลเองนะในตาราง audit_poit กรณี False ************
}
}
mysql_free_result($query_audit_list);
}//while($item=mysql_fetch_array($query_audit_item)){
} //if($num_row_item>0);{
mysql_free_result($query_audit_item);
}//if(isset($_POST['btnsubmit'])&& $_POST['btnsubmit']=='Audit'){
?>
<HTML>
<HEAD>
<TITLE>Audit Item by Radio Button</TITLE>
<META http-equiv=Content-Type CONTENT="text/html; charset=UTF-8">
</HEAD>
<BODY bgcolor="#ffffff">
<form method="post">
<?
$sql_audit_item="SELECT * FROM audit_item order by audit_item.item;";
$query_audit_item=mysql_query($sql_audit_item) or die("เปิดคิวรี่ $sql_audit_item ไม่ได้ <br>".mysql_error());
$num_row_item=mysql_num_rows($query_audit_item);
if($num_row_item>0){
while($item=mysql_fetch_array($query_audit_item)){
?>
<table width="400" border="1">
<tr>
<td bgcolor="#000066" colspan="2"><b><font color="#FFFFFF"><?=$item['item'].". ".$item['topic']?> </font></b></td>
<td align="center" bgcolor="#000066"><b><font color="#FFFFFF">Yes</font></b></td>
<td align="center" bgcolor="#000066"><b><font color="#FFFFFF">No</font></b></td>
</tr>
<?
$sql_audit_list="SELECT * FROM audit_list Where audit_item='".$item['item']."' Order By audit_list ;";
$query_audit_list=mysql_query($sql_audit_list) or die("เปิดคิวรี่ $sql_audit_list ไม่ได้ <br>".mysql_error());
$num_row_list=mysql_num_rows($query_audit_list);
if($num_row_list>0){
while($list=mysql_fetch_array($query_audit_list)){?>
<tr>
<td width="50"><?=$list['audit_list']?></td>
<td bgcolor="#6666FF"><font color="#FFFFFF"><?=$list['audit_details']?></font></td>
<td bgcolor="#6666FF" align="center"><input type="radio" name="<?=$list['audit_item'].$list['audit_list']?>" value="Y"></td>
<td bgcolor="#6666FF" align="center"><input type="radio" name="<?=$list['audit_item'].$list['audit_list']?>" value="N"></td>
</tr>
<? } //while($list=mysql_fetch_array($query_audit_list)){
} // if($num_row_list>0){
mysql_free_result($query_audit_list);
?>
</table>
<? }//while($item=mysql_fetch_array($query_audit_item)){
} //if($num_row_item>0);{
mysql_free_result($query_audit_item);
?>
<br>
<input type="submit" name="btnsubmit" value="Audit">
<input type="reset" name="btnreset" value="Reset">
</form>
</BODY>
</HTML>
<?php mysql_close($conn);?>
เมื่อ run แล้ว

|
ประวัติการแก้ไข 2010-12-18 18:19:12 2010-12-18 18:21:32 2010-12-18 18:23:20 2010-12-18 18:25:54 2010-12-18 18:31:25 2010-12-19 08:26:54 2010-12-19 08:27:25
 |
 |
 |
 |
Date :
2010-12-18 18:17:35 |
By :
wad |
|
 |
 |
 |
 |
|
|
 |