ช่วยทีครับผมจะทำรายงานออกมาเป็นเวิดแต่มันไม่ส่งค่าไปหน้าที่
หน้าที่ใช้ส่งค่า ส่งจากการค้นหา
Code (PHP)
<?php
include"config.inc.php";
$id_employee= $_GET["id_employee"];
$con = mysql_connect($host,$username,$password);
if (!$con)
{ die('Could not connect: ' . mysql_error()); }
mysql_select_db($database, $con);
mysql_query("SET NAMES UTF8");
?>
<?php
$month=$_REQUEST['month'];
$year=$_REQUEST['year'];
$num=0;
if($month=="" and $year==""){
$msg="รายงานสินค้าทั้งหมด";
$sql="select * from employee_totalot where id_employee='$id_employee' order by date_ot ASC";
}elseif($date_ot!=""){
$msg="รายงานสินค้าประจำวัน";
$day_start=$date_ot;
$sql="select * from products,p_status where products.id_status=p_status.id_status and products.date_in='$day_start' order by products.id_pro desc";
}elseif($month!="" and $year!=""){
$msg="รายงานการส่งสินค้าประจำเดือน";
$day_start=$year."-".$month."-01";
$day_end=$year."-".$month."-31";
$sql="select * from employee_totalot WHERE id_employee='$id_employee' AND employee_totalot.date_ot between '$day_start' and '$day_end' order by date_ot ASC";
}elseif($month=="" and $year!=""){
$msg="รายงานการส่งสินค้าประจำปี";
$day_start=$year."-01-01";
$day_end=$year."-12-31";
$sql="select * from products,p_status where products.id_status=p_status.id_status and products.date_in between '$day_start' and '$day_end' order by products.id_pro desc";
}
$result=mysql_query($sql);
if($result!=""){
$Num_Rows=mysql_num_rows($result);
}?>
<!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>
</head>
<body>
<a href="./?P=Report&Type=Shipping">รายงานสินค้า</a> <a href="report_ot_month_word.php">รายงานสินค้าตามเดือนและปี</a> <a href="report_ot_month_word.php?month=<?=$month?>&year=<?=$year?>?id=<?=$id_employee?>" target="_blank"><img src="pic/word.png" width="30" height="30" alt="print to word" /></a>
<div align="right">
<form id="form1" name="form1" method="post" action="">
<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center">รายงานตามเดือน/ปี ที่รับ
<label for="day"></label>
<label for="month"></label>
<select name="month" id="month">
<option value="">เลือกเดือน</option>
<option value="01">มกราคม</option>
<option value="02">กุมภาพันธ์</option>
<option value="03">มีนาคม</option>
<option value="04">เมษายน</option>
<option value="05">พฤษภาคม</option>
<option value="06">มิถุนายน</option>
<option value="07">กรกฎาคม</option>
<option value="08">สิงหาคม</option>
<option value="09">กันยายน</option>
<option value="10">ตุลาคม</option>
<option value="11">พฤศจิกายน</option>
<option value="12">ธันวาคม</option>
</select>
<label for="year"></label>
<select name="year" id="year">
<option value="">เลือกปี</option>
<option value="2012">2555</option>
<option value="2013">2556</option>
<option value="2014">2557</option>
<option value="2015">2558</option>
<option value="2015">2559</option>
<option value="2015">2560</option>
</select>
<input type="submit" name="Submit" id="button" value="ค้นหาข้อมูล" /></td>
</tr>
</table>
</form></div>
<?php
if($Num_Rows==0){
echo"<center><font color='red'><br><br><br>ไม่พบข้อมูลในระบบ<br><br><br></font></center>";
}else{
echo"$msg";
?>
<?
$sum1=0;
$co = 1; // จำนวนคอลั่มที่อยากได้
$tr = 0;
echo '<table width="300" border="1" cellspacing="0" cellpadding="2" align="center">' ;
echo '<td>';
echo "รหัสพนักงาน : ";
echo $id_employee;
echo '</td>';
echo '</table>';
echo '<table width="300" border="1" cellspacing="0" cellpadding="0" align="center">
<tr>
<th>วันที่ทำ OT</th>
<th>ชั่วโมงที่ทำ</th>
<th>รายรับ</th>
</tr>';
while($read=mysql_fetch_array($result)){
$id_ot=$read[id_ot];
$id_employee=$read[id_employee];
$id_otsala=$read[id_otsala];
$date_ot=$read[date_ot];
$hour_ot=$read[hour_ot];
$tot_ot=$read[tot_ot];
// ข้อมูลสมมุติดึงมาจาก mysql ละกัน
$sum1=$tot_ot+$sum1;
echo '<td>';
echo $date_ot; //วันที่ทำ ot
echo '</td>';
echo '<td>';
echo $hour_ot; //ชั่วโมงที่ทำ
echo '</td>';
echo '<td>';
echo $tot_ot;
//แสดงผลข้อมูลที่ต้องการตรงนี้
echo '</td>';
$tr++;
if( $tr== $co ) // ถ้าคอลั่มครบแล้วขึ้นแถวใหม่ อันนี้ จะกี่แล้วก็แล้วแต่ข้อมูลใน while ครับ
{
echo '</tr><tr>';
$tr=0;
}
'<tr>'; }
echo '<td>';
//แสดงผลข้อมูลที่ต้องการตรงนี้
echo '</td>';
echo '<td>';
//แสดงผลข้อมูลที่ต้องการตรงนี้
echo '</td>';
echo '<td>';
echo $sum1; //แสดงผลข้อมูลที่ต้องการตรงนี้
echo '</td>';
'</tr>';
echo '</tr></table>'; }
?>
</body>
</html>
ส่วนนี้หน้าที่ใช้ทำเป็น word แต่มันไม่ส่งค่ามาหน้านี้เลยอ่ะครับ
Code (PHP)
<?php
include"config.inc.php";
$con = mysql_connect($host,$username,$password);
if (!$con)
{ die('Could not connect: ' . mysql_error()); }
mysql_select_db($database, $con);
mysql_query("SET NAMES UTF8");
$date_ot=$_REQUEST['date_ot'];
$month=$_REQUEST['month'];
$year=$_REQUEST['year'];
//header("Content-type: application/vnd.ms-word");
//header("Content-Disposition: attachment; filename=testing.doc");
?>
<?php
$month=$_REQUEST['month'];
$year=$_REQUEST['year'];
$num=0;
if($month=="" and $year==""){
$msg="รายงานสินค้าทั้งหมด";
$sql="select * from employee_totalot where id_employee='$id_employee' order by date_ot ASC";
}elseif($date_ot!=""){
$msg="รายงานสินค้าประจำวัน";
$day_start=$date_ot;
$sql="select * from products,p_status where products.id_status=p_status.id_status and products.date_in='$day_start' order by products.id_pro desc";
}elseif($month==$date_ot and $year==$date_ot){
//}elseif($month!="" and $year!=""){
$msg="รายงานการส่งสินค้าประจำเดือน";
$day_start=$year."-".$month."-01";
$day_end=$year."-".$month."-31";
$sql="select * from employee_totalot WHERE id_employee='$id_employee' AND employee_totalot.date_ot between '$day_start' and '$day_end' order by date_ot ASC";
}elseif($month=="" and $year!=""){
$msg="รายงานการส่งสินค้าประจำปี";
$day_start=$year."-01-01";
$day_end=$year."-12-31";
$sql="select * from products,p_status where products.id_status=p_status.id_status and products.date_in between '$day_start' and '$day_end' order by products.id_pro desc";
}
$result=mysql_query($sql);
if($result!=""){
$Num_Rows=mysql_num_rows($result);
}?>
<!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>
</head>
<body>
<?php
if($Num_Rows==0){
echo"<center><font color='red'><br><br><br>ไม่พบข้อมูลในระบบ<br><br><br></font></center>";
}else{
echo"$msg";
?>
<?
$sum1=0;
$co = 1; // จำนวนคอลั่มที่อยากได้
$tr = 0;
echo '<table width="300" border="1" cellspacing="0" cellpadding="2" align="center">' ;
echo '<td>';
echo "รหัสพนักงาน : ";
echo $id_employee;
echo '</td>';
echo '</table>';
echo '<table width="300" border="1" cellspacing="0" cellpadding="0" align="center">
<tr>
<th>วันที่ทำ OT</th>
<th>ชั่วโมงที่ทำ</th>
<th>รายรับ</th>
</tr>';
while($read=mysql_fetch_array($result)){
$id_ot=$read[id_ot];
$id_employee=$read[id_employee];
$id_otsala=$read[id_otsala];
$date_ot=$read[date_ot];
$hour_ot=$read[hour_ot];
$tot_ot=$read[tot_ot];
// ข้อมูลสมมุติดึงมาจาก mysql ละกัน
$sum1=$tot_ot+$sum1;
echo '<td>';
echo $date_ot; //วันที่ทำ ot
echo '</td>';
echo '<td>';
echo $hour_ot; //ชั่วโมงที่ทำ
echo '</td>';
echo '<td>';
echo $tot_ot;
//แสดงผลข้อมูลที่ต้องการตรงนี้
echo '</td>';
$tr++;
if( $tr== $co ) // ถ้าคอลั่มครบแล้วขึ้นแถวใหม่ อันนี้ จะกี่แล้วก็แล้วแต่ข้อมูลใน while ครับ
{
echo '</tr><tr>';
$tr=0;
}
'<tr>'; }
echo '<td>';
//แสดงผลข้อมูลที่ต้องการตรงนี้
echo '</td>';
echo '<td>';
//แสดงผลข้อมูลที่ต้องการตรงนี้
echo '</td>';
echo '<td>';
echo $sum1; //แสดงผลข้อมูลที่ต้องการตรงนี้
echo '</td>';
'</tr>';
echo '</tr></table>'; }
?>
</body>
</html>
ช่วยดูให้ทีน่ะครับผมงงจริงๆTag : PHP
Date :
2015-04-28 18:34:59
By :
narongsad
View :
710
Reply :
14
049.<form id="form1" name="form1" method="post" action="url ที่ต้องการไม่ได้ใส่ จะส่งมาที่ไฟล์เดิม ">
Date :
2015-04-28 19:27:01
By :
Chaidhanan
ขอโทษครับอ่านโค๊ดไม่ละเอียด ชักเบลอ แฮะๆ
น่าจะเป็น ปุ่มนี้ใช่ไหมครับ สีแดง ควรเป็น & ครับ
<a href="report_ot_month_word.php?month=<?=$month?>&year=<?=$year?>? id=<?=$id_employee?>" target="_blank"><img src="pic/word.png" width="30" height="30" alt="print to word" /></a>
Date :
2015-04-28 20:06:13
By :
Chaidhanan
08. $date_ot=$_REQUEST['date_ot '];
ไม่เห็นมีการส่งค่ามานะครับ เอาไปใช้ ซะเยอะ แต่ไม่ตัวแปรนี้
Date :
2015-04-28 20:24:45
By :
Chaidhanan
ลองตรวจสอบตรงนี้ก่อนครับ
038. $result=mysql_query($sql);
039. if($result!=""){
040. $Num_Rows=mysql_num_rows($result);
041.}?>
แก้เป็น
Code (PHP)
$result=mysql_query($sql) or die( mysql_error() . "<br>[[ $sql ]]" )
$Num_Rows=mysql_num_rows($result);
if( $Num_Rows==0) die ( 'result = 0 rows<br>' . "[[ $sql ]]")
Date :
2015-04-28 21:31:52
By :
Chaidhanan
ขอโทษครับตัวอย่างผมผิดครับ ตก ; (semi colon) บันทัดแรก และบันทัดสุดท้าย
Date :
2015-04-28 22:30:39
By :
Chaidhanan
ก็ลองดูครับ ตัวแปร $id_employee บันทัด 20 และ 30 เอามาจากไหน ไม่ได้ถูกกำหนดค่าไว้
Date :
2015-04-28 22:45:03
By :
Chaidhanan
Load balance : Server 05