Php 计算当月每个工作日的数量
我在一个农场做送货员,我有一个笔记本(不是笔记本电脑),里面记录了我给某人买了多少升牛奶,什么时候买,以及他们在月底要付多少钱,我想做一个应用程序来记录一切,然后把笔记本扔掉。 我正在使用HTML、PHP和MySQL来实现这一点,这是我到目前为止得到的:Php 计算当月每个工作日的数量,php,html,mysql,Php,Html,Mysql,我在一个农场做送货员,我有一个笔记本(不是笔记本电脑),里面记录了我给某人买了多少升牛奶,什么时候买,以及他们在月底要付多少钱,我想做一个应用程序来记录一切,然后把笔记本扔掉。 我正在使用HTML、PHP和MySQL来实现这一点,这是我到目前为止得到的: This is the form: <html> <body> <form action="insert.php" method="post"> <table border="0"><t
This is the form:
<html>
<body>
<form action="insert.php" method="post">
<table border="0"><tr>
<td>Name: </td><td><input type="text" name="name"></td>
</tr><tr>
<td>Multiplier:</td><td><input type="text" name="multiplier"/></td></tr><tr>
<td>Sunday</td><td><input type="checkbox" name="values[]" value="1" /></td></tr><tr>
<td>Monday</td><td><input type="checkbox" name="values[]" value="2" /> </td></tr><tr>
<td>Tuesday</td><td><input type="checkbox" name="values[]" value="3" /></td></tr><tr>
<td>Wednesday</td><td><input type="checkbox" name="values[]" value="4" /></td></tr><tr>
<td>Thursday</td><td><input type="checkbox" name="values[]" value="5" /></td></tr><tr>
<td>Friday</td><td><input type="checkbox" name="values[]" value="6" /></td></tr><tr>
<td>Saturday</td><td><input type="checkbox" name="values[]" value="7" /></td></tr><br>
<td><input type="submit" value="Add"></td></tr>
</form>
</body>
</html>
这是一种形式:
姓名:
乘数:
星期日
星期一
星期二
星期三
星期四
星期五
星期六
*乘数是我每次给那个人多少升(通常每次的量都是一样的)
我正在使用它在PHP脚本的帮助下向数据库中添加新的人员:
<?php
$con=mysqli_connect("","root","","Lapte");
//Check if connected
if(mysqli_connect_errno()){
echo "Failed to connect to database: ".mysqli_connect_errno();
}
$name=$_POST['name'];
$days=sizeof($_POST['values']);
$multiplier=$_POST['multiplier'];
$days=$days*$multiplier;
$totalPerWeek=$days*2.5;
$sql="INSERT INTO deliveries (Name, Times/Week, Pay)
VALUES
('$name','$days','$totalPerWeek')";
if(!mysqli_query($con,$sql)){
die('Error: '.mysqli_error($con));
}
echo "$name added to database.";
mysqli_close($con);
?>
使用下面的函数提供月份和年份,每个工作日的数组将返回一个表示该月金额的值
<?php
function calculateDays($month, $year) {
//how many days in given month
$TotalDays = cal_days_in_month(CAL_GREGORIAN, $month, $year);
$DayCount = array();
for ($i = 1; $i <= $TotalDays; $i++) {
//for each day (1st to 30th/31st) get the weekday
$DayOfWeek = date('l', mktime(0, 0, 0, $month, $i, $year));
//add 1 to the counter
$DayCount[$DayOfWeek]++;
}
return $DayCount;
}
?>
<?php
function countDayinMonth($day, $month, $year) {
//how many days in given month
$TotalDays = cal_days_in_month(CAL_GREGORIAN, $month, $year);
$Count = 1;
for ($i = 1; $i <= $TotalDays; $i++) {
if ($day == date('l', mktime(0, 0, 0, $month, $i, $year)))
//add 1 to the counter
$Count++;
}
return $Count;
}
?>
或者使用下面的函数提供日期以及月份和年份,它将返回给定日期在该月出现的次数的数值
<?php
function calculateDays($month, $year) {
//how many days in given month
$TotalDays = cal_days_in_month(CAL_GREGORIAN, $month, $year);
$DayCount = array();
for ($i = 1; $i <= $TotalDays; $i++) {
//for each day (1st to 30th/31st) get the weekday
$DayOfWeek = date('l', mktime(0, 0, 0, $month, $i, $year));
//add 1 to the counter
$DayCount[$DayOfWeek]++;
}
return $DayCount;
}
?>
<?php
function countDayinMonth($day, $month, $year) {
//how many days in given month
$TotalDays = cal_days_in_month(CAL_GREGORIAN, $month, $year);
$Count = 1;
for ($i = 1; $i <= $TotalDays; $i++) {
if ($day == date('l', mktime(0, 0, 0, $month, $i, $year)))
//add 1 to the counter
$Count++;
}
return $Count;
}
?>
更新:
以下函数只返回当前日期/月份/年份的数值
因此,今天是8月1日星期四,将返回5
function countDayinMonth() {
$day = date('l');
$month = date('n');
$year = date('Y');
//how many days in given month
$TotalDays = cal_days_in_month(CAL_GREGORIAN, $month, $year);
$Count = 0;
for ($i = 1; $i <= $TotalDays; $i++) {
if ($day == date('l', mktime(0, 0, 0, $month, $i, $year)))
//add 1 to the counter
$Count++;
}
return $Count;
}
echo countDayinMonth();
函数countDayinMonth(){
$day=日期('l');
$month=日期('n');
$year=日期('Y');
//给定月份有多少天
$TOTALLDAYS=cal_月天数(cal_公历,$month,$year);
$Count=0;
对于($i=1;$i,通过查看您的代码,没有“月”或“交货计划”的概念。您甚至没有在数据库中存储“交货日”。我只看到次/周
(语法相当奇怪?)在你的delivery
表中。顺便说一句,每周只有一个星期日和一个星期四:你最好显示你的sql
语句。是的,但是我如何让它根据月份自动计算总数呢?那么你想要一个函数,它将占用当前日期/月份/年份,只返回一个数字吗?非常感谢你,Phil.T他上一次的活动表明了这一点:)再次感谢你!我会投票支持你的职位,但我不能,因为我需要至少有15个声誉。:(这个cal_days_in_month(cal_GREGORIAN,$month,$year);?cal_GREGORIAN是什么?