การ Select ข้อมูลครับพี่ ขอความช่วยเหลือด่วน สอบ 7 โมงเช้าครับ
สมัครสมาชิกก่อนครับ แล้วจะดูให้
Date :
2013-05-29 05:22:43
By :
cookiephp
ผมสมัครแล้วครับพี่ สมัครไปน่าจะเที่ยงๆของวันที่ 28 แล้ว แต่ไม่มีอีเมล์ใด ๆ เข้ามาเลยครับ รอรหัสยืนยัน
Email : L3arpow@จีเมล์.com ครับ
กดส่งรหัสซ้ำก็ไม่มาครับ
Date :
2013-05-29 05:29:09
By :
nuyzz
ลองดูใน folder junk สิครับ ส่วนใหญ่มันจะไปอยู่ในนั้น
Date :
2013-05-29 05:34:51
By :
cookiephp
คำว่า ออกซ้ำๆ ไปมา มันเป็นยังไงครับ
มีตัวอย่างข้อมูลให้ดูไหมว่ามันออกมาเป็นอย่างไร
และตัวอย่างข้อมูลที่อยากให้ออกมามั้ยครับ
แคปภาพหน้าจอมาก็ได้
คือขอให้ยกตัวอย่างให้ละเอียดกว่านี้ครับ อ่านแล้วงง
Date :
2013-05-29 05:36:47
By :
cookiephp
ครับก็แบบว่ามันเป็นน่าที่จะออกรายงาน PDF นะครับแล้วตอนแรกมันเป็นการออกรายงานที่สั่งซื้อทั้งหมด ผมใช้
Code (PHP)
$strSQL = "SELECT * FROM purchase p, purchase_detail pd, asset a WHERE p.Purchase_ID = pd.Purchase_ID AND pd.As_ID = a.As_ID ";
ผมก็ได้น่า PDF มาโดยข้อมูลที่ออกจะเป็นรายงานการสั่งซื้อทั้งหมดที่มีอยู่ฐานข้อมูล โดยมันจะเรียงลงมามาจนครบเช่นมี 2 อันก็จะแสดง
PurchaseID Name Amount Cost
PR001 iPhone 5 20000
PR002 Air 5 12000
เป็นตารางออกมานะครับ ก็มันก็ออกถูกต้อง แต่ผมดันต้องการให้มันออกรายงานสั่งซื้อ ตามวันที่ผมเลือกผมเลยใช้
Code (PHP)
<?php
session_start();
include("function.php");
include("connectdb.php");
$Error = 1;
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Report</title>
<style type="text/css">
<!--
.style1 {font-size: 24px}
.style4 {font-size: 18px; font-weight: bold; color: #000000; }
.style5 {font-size: 16px}
-->
</style>
<script>
function dateget(){
var st = new Date(document.getElementById('start').value);
var en = new Date(document.getElementById('stop').value);
if(en.getTime()-st.getTime()<0){
document.getElementById('rpt').disabled=true;
alert("Can't be selected.");
}else{
document.getElementById('rpt').disabled=false;
}
//alert(d+" "+e);
}
</script>
<script>
function dateget1(){
var st1 = new Date(document.getElementById('start1').value);
var en1 = new Date(document.getElementById('stop1').value);
if(en1.getTime()-st1.getTime()<0){
document.getElementById('rpt1').disabled=true;
alert("Can't be selected.");
}else{
document.getElementById('rpt1').disabled=false;
}
//alert(d+" "+e);
}
</script>
</head>
<body><center>
<tr>
<td><?php include("Header1.php");?></td>
</tr>
<tr>
<?php if($_SESSION['Status'] == "Admin") { ?><td><?php include("admin_menu.php");?></td><?php } ?>
<?php if($_SESSION['Status'] == "User") { ?><td><?php include("user_menu.php");?></td><?php } ?>
</tr>
<table width="1220" border="1">
<tr>
<th>
<br>
<br>
<table width="666" border="0" align="center">
<td width="666" rowspan="3"><div align="center"><img src="Image/1111.png"></div></td>
</table>
<br>
<table width="666" border="1" align="center">
<tr>
<td width="262"><p align="center"><span class="style4">Expire Date Report</span></td>
<td width="130"><p align="center"><span class="style4">Assets Report</span></td>
<td width="252"><p align="center"><span class="style4">Purchase Report</span></td>
</tr>
<tr>
<td><form action="../fpdf17/testpdf.php" method="get">
<br>
<div align="center">
<p>Starting Report :
<input type="date" name="start" id="start"/>
<br />
Ending Report :
<input type="date" name="stop" id="stop" onChange="dateget()"/>
<br />
<br>
<input type="submit" name="submit" value="Report" id="rpt">
</p>
</div>
</form> </td>
<td> <form action="../fpdf17/testpdf1.php" method="get">
<br>
<div align="center"><br>
<input type="submit" name="submit2" value="Report" />
<br>
<br>
<br>
</div>
</form></td>
<td> <form action="../fpdf17/testpdf3.php" method="get">
<br>
<div align="center"><br>
<p>Starting Report :
<input type="date" name="start1" id="start1"/>
<br />
Ending Report :
<input type="date" name="stop1" id="stop1" onChange="dateget1()"/>
<br />
<br>
<input type="submit" name="submit" value="Report" id="rpt1">
</p>
</div>
</form></td>
</tr>
</table>
<br>
<br>
<br />
</th>
</tr>
</table>
</center>
</body>
</html>
ในส่วนที่ส่งไป testpdf3.php คือที่ผมเพิ่มขึ้นมาให้เลือกตามวันตั้งเป็น start1 stop1 จะได้ไม่ซ้ำกับออกรายงานตัว testpdf.php
ทีนี้ผมให้มันเลือกและแสดงออกมาได้แล้วตามวันเช่นผมเลือก
วันเริ่มที่ 22/05/2556
วันสิ้นสุด 23/05/2556
จากการ select แบบนี้
Code (PHP)
$strSQL = "SELECT * FROM purchase p, purchase_detail pd, asset a WHERE Purchase_Date
BETWEEN '".$_REQUEST['start1']."' AND '".$_REQUEST['stop1']."' ";
ซึ่งมันออกตามระยะเวลาที่ผมเลือกครับแต่ว่ามันดันออกเป็น
PurchaseID Name Amount Cost
PR001 iPhone 5 20000
PR002 Air 5 12000
PR001 iPhone 5 20000
PR002 Air 5 12000
PR001 iPhone 5 20000
PR002 Air 5 12000
PR001 iPhone 5 20000
PR002 Air 5 12000
PR001 iPhone 5 20000
PR002 Air 5 12000
ประมาณนี้อะครับ เพราะว่าผมเอาตัว p.Purchase_ID = pd.Purchase_ID AND pd.As_ID = a.As_ID ออกเพราะผมไม่รู้ว่ามันจะต้องอยู่ตรงไหน ซึ่งชุดนี้แหละครับมันกำหนดให้ไม่ออกซ้ำกันออกมา ผมไม่รู้ว่าชุดคำสั่งนี้จะไปแทรกไว้ตรงไหนถ้าผมใช้ between แล้ว
ประวัติการแก้ไข 2013-05-29 05:51:58
Date :
2013-05-29 05:50:48
By :
nuyzz
ลองใช้ JOIN แทนครับ
Code (PHP)
$strSQL = "
SELECT *
FROM purchase
JOIN purchase_detail
ON (purchase.id = purchase_detail.Purchase_ID)
JOIN asset
ON (purchase_detail.As_ID = a.As_ID)
WHERE
Purchase_Date BETWEEN '$_REQUEST[start1]' AND '$_REQUEST[stop1]'
";
Date :
2013-05-29 06:04:44
By :
cookiephp
Code (PHP)
$strSQL = "SELECT * FROM purchase JOIN purchase_detail ON (purchase.Purchase_ID = purchase_detail.Purchase_ID)
JOIN asset ON (purchase_detail.As_ID = asset.As_ID) WHERE Purchase_Date BETWEEN '".$_REQUEST['start1']."' AND '".$_REQUEST['stop1']."' ORDER BY purchase.Purchase_ID ";
ได้แล้วครับพี่ แปลงนิดหน่อย
ขอบคุณมากครับ ผมสอบโปรเจคจบมหาลัยแล้ว ^^ ขอบคุณพี่มากครับ
Date :
2013-05-29 06:15:56
By :
nuyzz
Load balance : Server 05