มีใครพอจะทราบวิธีการใช้ Foreign Key ในภาษา php มั๊ยค่ะ
Code (PHP)
FOREIGN KEY (CustomerID) REFERENCES customer (CustomerID) ON DELETE CASCADE ON UPDATE CASCADE
Date :
2013-02-21 01:17:03
By :
kokiflam
คือ ในฐานข้อมูลหนูนะค่ะมี ตารางชื่อ add_krupan กับ add_repair อยู่แล้วทั้งสองอันมันมีฟิลด์เหมือนกันอยู่อ่ะค่ะ อาจารย์บอกว่ามันไม่ถูกตัองมันจะเก็บข้อมูลซ้ำซ้อนหนูไม่รู้จะทำไงอ่ะ งง ไปหมดเลย
Date :
2013-02-21 09:55:51
By :
มุก
อย่างที่ผมเคยทำนะครับหากไม่ถูกต้องขอ อภัย
คีย์นอกนะครับ จะเหมือนกันใน 2 ตาราง แค่ฟิลด์นั้นนะครับเช่น
order - customer
table order
id name customerid
table customer
customerid customername customeraddress
ก็เลยงงว่า ที่คุณบอกว่าซ้ำอะครับ ซ้ำกับฟิลด์อื่นที่ไม่จำเป็นรึเปล่าครับ
เพราะถ้าแยกฐานข้อมูล เวลานำมา Join กัน ข้อมูลไม่ซ้ำซ้อนนะครับ
ถ้าไม่ใช่คีย์ร่วม พยายามไม่ตั้งชื่อเหมือนกันนะครับใน 2 ตาราง
Code (PHP)
$sql=" SELECT order.id,order.name,order.customerid,
customer.customerid,customer.customername,customer.customeraddress
FROM ob
LEFT JOIN customer ON order.customerid = customer.customerid";
ประวัติการแก้ไข 2013-02-21 10:41:07 2013-02-21 10:41:26 2013-02-21 10:41:36 2013-02-21 10:44:24 2013-02-21 10:45:13 2013-02-21 10:50:01 2013-02-21 11:01:30 2013-02-21 11:03:46 2013-02-21 11:07:30
Date :
2013-02-21 10:36:59
By :
puldool
Date :
2013-02-21 10:55:48
By :
mr.win
error นี้คืออะไรแก้ตรงไหนบบอยหน่อยได้ป่ะค่ะ
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\Project017_021\search_krupan_admin.php on line 64
ผลการค้นหา รายการ
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\Project017_021\search_krupan_admin.php on line 67
_____________________________________
นี่โค้ดค่ะ
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874" />
<title>Untitled Document</title>
<style type="text/css">
<!--
.style1 {
font-size: 36px;
font-weight: bold;
}
body {
background-color: #CCCCCC;
}
.style3 {font-size: 16px}
-->
</style>
</head>
<body>
<div align="left">
<p align="center" class="style1">:: ค้นหา ::</p>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<th scope="row"><form id="form1" name="form1" method="post" action="">
<table width="400" border="0" cellspacing="0" cellpadding="0">
<tr>
<th width="95" scope="row">รหัสครุภัณฑ์</th>
<td width="171"><label>
<input type="text" name="s_id_krupan" id="s_id_krupan" />
</label></td>
<td width="134"><label>
<input type="submit" name="search" id="search" value="ค้นหา" />
</label></td>
</tr>
</table>
</form>
</th>
</tr>
</table>
<div align="center"></div>
<p align="center">
</p>
<table width="900" align="center" cellpadding="0" cellspacing="0" bordercolor="#000000">
<tr align="left" bgcolor="#FFCC66">
<th width="57" height="61" bgcolor="#CCCCFF" scope="row"><span class="style3">ที่</span></th>
<td width="225" bgcolor="#CCCCFF"><span class="style3">วัน/เดือน/ปี ที่ได้รับครุุภัณฑ์</span></td>
<td width="228" bgcolor="#CCCCFF"><span class="style3">รหัสครุภัณฑ์</span></td>
<td width="180" bgcolor="#CCCCFF"><span class="style3">ชื่อครุภัณฑ์</span></td>
<td width="86" bgcolor="#CCCCFF"><span class="style3">รายละเอียด</span></td>
<td width="122" bgcolor="#CCCCFF"><span class="style3">จัดการข้อมูล</span></td>
</tr>
<?php
$s_id_krupan = $_POST['s_id_krupan'];
include("connect.php");
if ($s_id_krupan!=""){ //ถ้า$s_id_krupanไม่เท่ากับค่าว่าง
$sql = "select * from add_krupan where id_krupan1='$s_id_krupan' "; //เลือกข้อมูลจากตาราง add_krupan โดยเลือกจากการเทียบค่าจากฟิล id_krupan ที่มีค่าเท่ากับ $s_id_krupan
}else{
$sql = "select * from add_krupan order by id desc"; //เลือกข้อมูลทั้งหมดจากตาราง add_krupan โดยเรียงลำดับค่าครุภัณฑ์ที่ทำการเพิ่มล่าสุดแสดงก่อน
}
//echo $sql;
$result = mysql_query($sql);
$num_rows = mysql_num_rows($result);
echo "ผลการค้นหา ".$num_rows ." รายการ";
$n = 0;
while($rs = mysql_fetch_array($result)){
$n++;
$tblkp_id = $rs['tblkp_id'];
$date= $rs['date'];
$mouth= $rs['mouth'];
$year= $rs['year'];
$id_krupan1= $rs['id_krupan1'];
$id_krupan2= $rs['id_krupan2'];
$id_krupan3= $rs['id_krupan3'];
$id_krupan4= $rs['id_krupan4'];
$id_krupan5= $rs['id_krupan5'];
$name_krupan= $rs['name_krupan'];
$detail_krupan= $rs['detail_krupan'];
$price= $rs['price'];
$room= $rs['room'];
if ($bg =="#ffcccc"){ // เป็นเงื่อนไขในการใส่พื้นหลัง ถ้าเป็นสีนี้จริง ให้แสดงเป็นสีนี้
$bg = "#ffffcc";
}else{ //แต่ถ้าไม่จริงก็จะเเสดงสีเก่า
$bg = "#ffcccc";
}
?>
<tr align="left" bgcolor="<?php echo $bg ?>" ><!--นี่คือแสดงผลลัพธ์ของเเบคกราว-->
<th height="29" bgcolor="<?php echo $bg ?>" scope="row"><?php echo $n ?></th>
<td><?php echo $date ?><?php echo $mouth ?><?php echo $year ?></td>
<td bgcolor="<?php echo $bg ?>"><?php echo $id_krupan1 ?>-<?php echo $id_krupan2 ?>-<?php echo $id_krupan3 ?>-<?php echo $id_krupan4 ?>-<?php echo $id_krupan5 ?></td>
<td bgcolor="<?php echo $bg ?>"><?php echo $name_krupan ?></td>
<td bgcolor="<?php echo $bg ?>"><a href="detail_krupan_admin.php?id=<?php echo $id; ?>">คลิ๊ก</a></td>
<td bgcolor="<?php echo $bg ?>"><a href="krupan_update?mid=<?php echo $id?>">[แก้ไข]</a> <a href="delete_krupan.php?mid=<?php echo $id?>">[ลบ]</a></td>
</tr>
<?php
} //จบ while
?>
</table>
<p align="center"><a href="show_krupan.php">ย้อนกลับหน้าแสดงข้อมูล</a></p>
</div>
</body>
</html>
Date :
2013-02-21 13:53:45
By :
มุก
ออกแบบตารางใหม่ครับ เพราะดูแล้วก็แปลกๆ เหมือนกัน
date mouth year เก็บเป็น date ดีกว่าครับ format จะเป็น 2013-02-21
id_krupan1 id_krupan2 id_krupan3 ..... คืออะไรครับ
หรือไม่ก็ลองบอกหัวข้อโปรเจค กับรายละเอียดคร่าวๆ ก็ได้ ว่าจะทำอะไร เก็บอะไรบ้าง
Date :
2013-02-21 15:09:52
By :
nutsuanplu
date mouth year คือ วันเดือนปีที่ได้รับครุภัณฑ์มาค่ะ แบบให้เเอดมินตอบเอง
id_krupan1 id_krupan2 id_krupan3 ..... คือ ชุดของรหัสครุภัณฑ์ค่ะ รหัสครุภัณฑ์มีห้าชุดน่ะค่ะ
โปรเจ็กคือ ระบบครุภัณฑ์ออนไลน์ ตารางนี้เก็บ
date mouth year คือ วัน เดือน ปีที่ได้รับครุภัณฑ์มา
id_krupan1 id_krupan2 id_krupan3 ..... คือ ชุดของรหัสครุภัณฑ์ค่ะ รหัสครุภัณฑ์มีห้าชุดน่ะค่ะ
name_krupan คือ ชือครุภัณฑ์
detail_krupan คือ รายละเอียดครุภัณฑ์
price คือ ราคา
room คือ ห้องที่ครุภัณฑ์อยู่
Date :
2013-02-21 15:24:02
By :
มุก
น่าจะเป็น
ตารางครุภัณฑ์ krupan_items
id เก็บ id ของครุภัณฑ์
name เก็บ ชื่อของครุภัณฑ์
type เก็บประเภทของครุภัณฑ์
price เก็บราคา
ตารางรายละเอียด krupan_list
id เก็บ id ของ krupan_list
item_no เก็บเลขครุภัณฑ์
krupan_items_id เก็บเลข id ของครุภัณฑ์ เอาไว้ join ตารางกับ krupan_items
date เก็บวันที่ที่ออกเลขครุภัณฑ์
time เก็บก็ได้ ไม่เก็บก็ได้ แล้วแต่การใช้งาน
room_id เก็บ id ของห้องที่เก็บครุภัณฑ์ เอาไว้ join กับตาราง krupan_room
ตารางห้องที่เก็บครุภัณฑ์ krupan_room
id เก็บ id ของห้องที่เก็บครุภัณฑ์
name เก็บชื่อห้อง
ประมาณนี้น่าจะได้ครับ แต่รายละเอียดจะเก็บอะไรเพิ่ม ก็เพิ่มเอานะครับ
ที่จริงต้องดูจากการใช้งานจริงครับ ว่าหน่วยงานต้องการอะไร ถึงจะออกแบบข้อมูลในตารางได้ถูกตามวัตถุประสงค์ครับ
Date :
2013-02-21 15:59:29
By :
nutsuanplu
Load balance : Server 03