当date = '01'
和数据库表为空时,我尝试将var $ potong重置为从1开始。
这是我的代码:
$month = date('n');
$b=romanNumerals($month);
$years=date('Y');
echo"<div class='form-group'>";
$tanggal=date('d');
$s=mysql_query('SELECT * FROM preorder ORDER BY id_po DESC LIMIT 1');
while($a=mysql_fetch_array($s)){
$nomor = $a[2];
$potong = (int)substr($nomor,0,3);
$potong++;
$awal =1;
}
$kosong= mysql_num_rows($s);
if($potong == 0 || $tanggal == 01){
echo"<input type='text' class='form-control input-lg' placeholder='' name='no_po' Readonly = true value='".sprintf('%03s',$awal)."/$b/CMT/$years'>";
}
else{
echo"<input type='text' class='form-control input-lg' placeholder='' name='no_po' Readonly = true value='".sprintf('%03s',$potong)."/$b/CMT/$years'>";
}
我需要建议,如何创造这种条件。
提前致谢。
答案 0 :(得分:0)
AUTO_INCREMENT
适用于密钥。如果您希望重新开始值,则必须自己跟踪。如果您有一个非常具体的表格,其中AUTO_INCREMENT
列仅设置为月的关键字:
CREATE TABLE myMonth(
month_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY);
然后你可以使用模数/余数:
month=month_id%12+1;
这将为您返回月份(+1是为了校正模数将为value-ROUND_DOWN(value/12)*12
的余数这一事实,如果值为12的倍数,则为零,并且日历为1作为第一个月(几乎除了在Java中有人认为0是一个不错的月份))