ปัญหามาอีกแล้วครับ พี่ ๆ คือ อยากจะนับวัน แต่ล่ะวันว่ามีกี่วันจะทำยังไงครับ ตัวอย่าง
คุณต้องกำหนดวันเริ่มต้น - ด้วยด้วยที่สิ้นสุดนะครับ
ต้องกำหนดตัวแปรวันที่เริ่มต้นและตัวแปรวันที่สิ้นสุด
จากนั้นก็เอามาลบกันนะครับ
อย่างไงก็ลองเอาโค๊ดนี้ไปดัดแปลงจะได้หรือไม่ครับ ถ้าไงก็ลองทำก่อน ไม่ได้จริง ๆ จะช่วยให้นะครับ...
----------------------------------------------------------------
-- phpMyAdmin SQL Dump
-- version 2.10.2
-- http://www.phpmyadmin.net
--
-- โฮสต์: localhost
-- เวลาในการสร้าง: 02 ก.ย. 2009 น.
-- รุ่นของเซิร์ฟเวอร์: 5.0.22
-- รุ่นของ PHP: 5.1.4
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- ฐานข้อมูล: `db_testphp`
--
-- --------------------------------------------------------
--
-- โครงสร้างตาราง `tb_testuploadfile`
--
CREATE TABLE `tb_testuploadfile` (
`idUpload` int(11) NOT NULL auto_increment,
`dateUpload` date NOT NULL,
`timeUpload` time NOT NULL,
`userUpload` varchar(255) character set tis620 NOT NULL,
`pathfile` varchar(255) character set tis620 NOT NULL,
`fileUpload` varchar(255) character set tis620 NOT NULL,
`fileSize` varchar(255) character set tis620 NOT NULL,
PRIMARY KEY (`idUpload`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=11 ;
--
-- dump ตาราง `tb_testuploadfile`
--
INSERT INTO `tb_testuploadfile` VALUES (1, '2009-08-18', '15:49:07', 'jjj', '20090818-154907-jjj', 'Becthai.zip', '15 MB.');
INSERT INTO `tb_testuploadfile` VALUES (2, '2009-08-18', '11:37:30', 'iii', '20090818-113730-iii', 'tara.zip', '15 MB.');
INSERT INTO `tb_testuploadfile` VALUES (3, '2009-08-17', '15:04:14', 'hhh', '20090817-150414-hhh', 'Foods.zip', '7 MB.');
INSERT INTO `tb_testuploadfile` VALUES (4, '2009-08-19', '14:53:02', 'ggg', '20090819-145302-ggg', 'impact 51.zip0054', '3 MB.');
INSERT INTO `tb_testuploadfile` VALUES (5, '2009-08-20', '14:35:57', 'fff', '20090820-143557-fff', 'impactMAT 51.zip', '3 MB.');
INSERT INTO `tb_testuploadfile` VALUES (6, '2009-08-22', '09:16:00', 'eee', '20090822-091600-eee', 'impactWER.zip', '3 MB.');
INSERT INTO `tb_testuploadfile` VALUES (7, '2009-08-24', '17:21:14', 'ddd', '20090824-172114-ddd', 'impact 51.zip', '3 MB.');
INSERT INTO `tb_testuploadfile` VALUES (8, '2009-08-29', '13:44:37', 'ccc', '20090829-134437-ccc', 'Mt3153_2.zip', '14 MB.');
INSERT INTO `tb_testuploadfile` VALUES (9, '2009-08-31', '10:34:06', 'bbb', '20090831-103406-bbb', 'Sekisui_1.zip', '9 MB.');
INSERT INTO `tb_testuploadfile` VALUES (10, '2009-09-01', '10:30:58', 'aaa', '20090901-103058-aaa', 'Report_Progres1.zip', '12 MB.');
----------------------------------------------------------------
จากกระทู้นะครับ ผมได้ลองเขียนโค๊ดไว้บ้างแล้วดังนี้ :*
----------------------------------------------------------------
<?php
$hostName = "localhost";
$userName = "user";
$passWord = "user";
$conn = mysql_connect($hostName, $userName, $passWord) or die ("Can not Database Server");
mysql_query("SET NAMES tis620", $conn);
mysql_query("USE db_testphp");
// กำหนดวันที่จะให้ลบโฟลเดอร์
$dataDel = 7;
// แสดงวันที่ปัจจุบัน
$dateCurrent = date("Y-m-d");
$dateB = explode("-",$dateCurrent );
$dateToday = mktime(0, 0, 0, $dateB[1], $dateB[2], $dateB[0]);
// เรียกข้อมูลจาก tb_testuploadfile เรียงวันที่ จากน้อยไปมาก
$sql = "SELECT * FROM tb_testuploadfile ORDER BY dateUpload ASC";
$result = mysql_query($sql) or die ("$sql_Error");
while($row=mysql_fetch_array($result)){
$dateDBW = $row['dateUpload'];
$dateDBY = explode("-",$dateDBW);
$dateDBZ = mktime(0, 0, 0, $dateDBY[1], $dateDBY[2], $dateDBY[0]);
echo "วันที่ปัจจุบัน : $dateCurrent <br>";
echo "วันที่ในฐาน : $dateDBW <br>";
echo "กำหนดวันลบ : <font color=green><b>$dataDel วัน</b></font><br>";
// ค่าวันเดือนปีปัจจุบัน - ค่าของวันเดือนปีในฐาน / (24*60*60);
$expireDate = ($dateToday - $dateDBZ) / (24*60*60);
if ( $expireDate > $dataDel){
echo "จำนวนว้นอัพโหลดไฟล์ <font color=red>$expireDate วัน :> <b>ลบไฟล์โฟลเดอร์</b></font><hr>";
}else{
echo "จำนวนวันอัพโหลดไฟล์ $expireDate วัน : <font color=blue>ยังไม่ต้องทำอะไรทั้งสิ้น</font ><hr>";
}
}
?>
--------------------------------------
จากกระทู้ที่ผมได้ถามไว้
https://www.thaicreate.com/php/forum/031166.html
Date :
2009-09-03 11:05:40
By :
pukmtec
Load balance : Server 05