|
|
|
ปัญหา [WHERE Table] รบกวนหน่อยครับ ช่วยเข้ามาดูและตอบผมหน่อยน่ะครับ ทำไม่ถูกจริงๆ T_T |
|
|
|
|
|
|
|
คือตาม Code จะได้ผลประมาณนี้ และตามรูป
Doc1.doc ในวงกลมสีแดง เป็นไฟล์หลัก ซึ่งมีไฟล์เดียว และมี record เดียวในฐานข้อมูล
และ ในวงกลมสีน้ำเงิน ที่เป็น วัน_เดือน_ปี_ เวลา_ชื่อไฟล์ เป็นไฟล์ย่อยอีกที มี2ไฟล์ และ 2 record ในฐานข้อมูล
คือมันมีปัญหาตรงที่ ผมอยากรวมให้แถวในช่องสีน้ำเงินที่เป็นไฟล์ย่อยรวมอยู่เป็นแถวเดียวอ่ะครับ แบบไม่อยากให้มันขึ้น ไฟล์หลักใหม่แล้วตามด้วยไฟล์ย่อยอีกที
เพราะสมมติว่ามีไฟล์ย่อย 10 ไฟล์ มันคงเต็มหน้าเพจแน่ๆเลย
พี่ๆ เทพๆ ช่วยผมหน่อยเถอะ แก้มาหลายวันแล้วยังไม่ได้เลย ช่วยแนะนำผมหน่อยน่ะครับ ขอร้องล่ะ T_T
Code (PHP)
<!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=utf-8" />
<title>Untitled Document</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".slidingDiv").hide();
$(".slidingtopic").hide();
$(".show_hide").show();
$('.show_hide').click(function(){
$(".slidingDiv").slideToggle();
$(".slidingtopic").slideToggle();
});
});
</script>
<style>
.slidingtopic {
height:10px;
}
.slidingDiv {
height:10px;
background-color:#CF6;
padding:10px;
size:10em;
border-bottom:3px solid #000;
}
.show_hide {
display:none;
}
</style>
</head>
<body>
<?
include('config.inc.php');
$strSQL = "SELECT files.FilesID as F_FilesID,
files.UserID_Sender,files.Name_Sender,files.UserID_Sender,files.Filesname as F_Filesname,files.Name_Filesnew,
files.Date,files.Time,files.Type,files.Details,files.UserID_Receiver,files.Status_Files,files.View,
filesedit.FilesID as E_FilesID ,
filesedit.Filesname as E_Filesname,
filesedit.UserID_Edit as E_UserID_Edit,
filesedit.Date as E_Date,
filesedit.Time as E_Time
FROM files
LEFT JOIN member ON files.FilesID = member.UserID
inner JOIN filesedit WHERE files.FilesID = filesedit.FilesID
";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
?>
<table width="80%" align="center" cellpadding="0" cellspacing="3" class="table">
<tr>
<td colspan="3" style="white-space:normal"><strong><img src="images/formupload.png" align="absmiddle"/> Word</strong></td>
</tr>
<tr>
<td width="2%" class="tbl5" style="white-space: nowrap;"><div align="center"><strong>by</strong></div></td>
<td width="3%" class="tbl5" style="white-space: nowrap;"><div align="center"><strong>Main Files</strong></div></td>
<td width="2%" class="tbl5" style="white-space: nowrap;"><div align="center"><strong>Day</strong></div></td>
<td width="2%" class="tbl5" style="white-space: nowrap;"><div align="center"><strong>Time</strong></div></td>
<td width="2%" class="tbl5" style="white-space: nowrap;"><div align="center"><strong>Show</strong></div></td>
</tr>
<?
$i=0;
while($objResult = mysql_fetch_array($objQuery))
{
$i++;
if($i%2==0)
{
$bg = "#FDFDF0";
}
else
{
$bg = "#E0FFFF";
}
?>
<tr>
<td class="tbl7"><div align="center"><?=$objResult["Name_Sender"];?></div></td>
<td class="tbl7"><div align="center"><?=$objResult["F_Filesname"];?></div></td>
<td class="tbl7"><div align="center"><?=$objResult["Date"];?></div></td>
<td class="tbl7"><div align="center"><?=$objResult["Time"];?></div></td>
<td class="tbl7"><div align="center"> <a href="#" class="show_hide">Show</a></div></td>
</tr>
<tr>
<td> <div align="center"><div class="slidingDiv">Sub Files</div></div></td>
<td ><div align="center"><div class="slidingDiv"><?=$objResult["E_Filesname"];?></div></div></td>
<td ><div align="center"><div class="slidingDiv"></div></div></td>
<td ><div align="center"><div class="slidingDiv"></div></div></td>
<td ><div align="center"><div class="slidingDiv"></div></div></td>
</tr>
;
<?
}
?>
</table>
<?
mysql_close($objConnect);
?>
</body>
</html>
Tag : PHP, MySQL, HTML/CSS, JavaScript
|
|
|
|
|
|
Date :
2012-09-25 15:28:48 |
By :
cappuczino |
View :
1032 |
Reply :
12 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใน DB ไฟล์หลัก และ ไฟล์ย่อย ถูกเก็บอยู่ยังไงค่ะ
เก็บแบบนี้หรือเปล่า
ตาราง ไฟล์หลัก
- id
- Filename
ตารางไฟล์ย่อย
- id (รหัสไฟล์ย่อย)
- Filename (ชื่อไฟล์ย่อย)
- id (รหัสไฟล์หลัก)
|
|
|
|
|
Date :
2012-09-25 16:16:15 |
By :
LuckyStar |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2012-09-25 16:54:33 |
By :
fiet |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sql ใช้ group by ไฟล์หลักดูยังครับ
|
|
|
|
|
Date :
2012-09-25 17:09:16 |
By :
popypreaw |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?
while($objResult = mysql_fetch_array($objQuery)) // Select เฉพาะไฟล์หลักเข้ามาก่อนครับไม่ต้อง join table ที่มีไฟล์รอง
{
$i++;
if($i%2==0)
{
$bg = "#FDFDF0";
}
else
{
$bg = "#E0FFFF";
}
?>
<tr>
<td class="tbl7"><div align="center"><?=$objResult["Name_Sender"];?></div></td>
<td class="tbl7"><div align="center"><?=$objResult["F_Filesname"];?></div></td>
<td class="tbl7"><div align="center"><?=$objResult["Date"];?></div></td>
<td class="tbl7"><div align="center"><?=$objResult["Time"];?></div></td>
<td class="tbl7"><div align="center"> <a href="#" class="show_hide">Show</a></div></td>
</tr>
<?
//----- เอาฟิว คีย์ ของ table หลัก มา join กับ คีย์ของ table รอง
$sql = "select *
form [tableไฟล์รอง]
where [tableไฟล์รอง].id = [tableไฟล์หลัก].id";
$query = mysql_query($sql) or die (mysql_error());
$num = mysql_num_rows($query);
if($num > 0) // ตรวจสอบว่ามีไฟล์หรือเปล่า
{
while($row = mysql_fetch_array($query)) // ถ้ามีไฟล์ คิวรีออกมา
{
?>
<tr>
<td> <div align="center"><div class="slidingDiv">Sub Files</div></div></td>
<td ><div align="center"><div class="slidingDiv"><?=$row["name_file"];?></div></div></td>
<td ><div align="center"><div class="slidingDiv"></div></div></td>
<td ><div align="center"><div class="slidingDiv"></div></div></td>
<td ><div align="center"><div class="slidingDiv"></div></div></td>
</tr>
<? } // end while รอง
} // end if
}// end while หลัก
?>
</table>
ตามนี้ครับ ได้ทำการทดสอบให้แล้่ว ไม่เข้าใจยังไงโพต ไว้น่ะ
|
|
|
|
|
Date :
2012-09-25 17:21:42 |
By :
fiet |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมแก้ ได้แล้วครับบบบบบบบ
Code (PHP)
<?
//----- เอาฟิว คีย์ ของ table หลัก มา join กับ คีย์ของ table รอง
$sql = "SELECT *
FROM filesedit
INNER JOIN files
WHERE filesedit.FilesID = '".$objResult["FilesID"]."' AND filesedit.FilesID = files.FilesID ";
$query = mysql_query($sql) or die (mysql_error());
$num = mysql_num_rows($query);
if($num > 0) // ตรวจสอบว่ามีไฟล์หรือเปล่า
{
while($row = mysql_fetch_array($query)) // ถ้ามีไฟล์ คิวรีออกมา
{
?>
ขอบคุณมากๆเลยครับบบบ ที่แนะแนวทางให้ ^^
|
|
|
|
|
Date :
2012-09-26 10:30:46 |
By :
cappuczino |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยินดีด้วยครับ
|
|
|
|
|
Date :
2012-09-26 15:48:52 |
By :
fiet |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|