Php DB在不同月份的两个日期之间获取数据时给出空结果集
我正在使用php/mysql。当我尝试在两个日期之间获取数据时,一切正常。但当我想在两个月之间获取数据时,例如:2014年1月31日和2014年2月3日,它不工作,并给出空结果集。它的工作周期为一个月 我的问题是:Php DB在不同月份的两个日期之间获取数据时给出空结果集,php,mysql,sql,Php,Mysql,Sql,我正在使用php/mysql。当我尝试在两个日期之间获取数据时,一切正常。但当我想在两个月之间获取数据时,例如:2014年1月31日和2014年2月3日,它不工作,并给出空结果集。它的工作周期为一个月 我的问题是: $sql1="select reg.id, payonline.regno as FORM_NO, payonline.paydate as DATE, reg.stufname as FIRSTNAME,
$sql1="select
reg.id,
payonline.regno as FORM_NO,
payonline.paydate as DATE,
reg.stufname as FIRSTNAME,
reg.stumname as MIDDLENAME,
reg.stulname as LASTNAME,
reg.stuemail as EMAIL,
DATE_FORMAT(reg.studob,'%d-%m-%Y') as DOB,
reg.stugender as GENDER,
reg.stumobile as MOBILE,
prg.paymentmode as PAYMENTMODE,
prg.examdate as TESTDATE,
prg.examcenter as EXAM_CENTER,
prg.hostel as HOSTEL,
prg.coursetype as PRG_TYPE,
prg.campus1 as CAMPUS1,
prg.course1 as PRG_NAME1,
prg.campus2 as CAMPUS2,
prg.course2 as PRG_NAME2,
prg.pgd_intrested as pgd_intrested,
prg.pgd_course1 as pgd_course1,
prg.pgd_campus1 as pgd_campus1,
prg.pgd_course2 as pgd_course2,
prg.pgd_campus2 as pgd_campus2,
family.stufname as FATHERNAME,
family.stufoccupation as FATHER_OCCUPATION,
family.stufmobile as FATHER_MOBILE,
family.stufspecify as FATHER_SPECIFY,
family.stufincome as FATHER_INCOME,
family.stufemail as FATHER_EMAIL,
family.stumname as MOTHERNAME,
family.stumoccupation as MOTHER_OCCUPATION,
family.stummobile as MOTHER_MOBILE,
family.stumspecify as MOTHER_SPECIFY,
family.stumincome as MOTHER_INCOME,
family.stumemail as MOTHER_EMAIL,
family.guardianname as GUARDIAN,
family.guardianaddress as GUARDIAN_ADDRESS,
family.guardianphone as GUARDIAN_PHONE,
address.presentaddress as PRESENT_ADDRESS,
address.presentcity as PRESENT_CITY,
address.presentstate as PRESENT_STATE,
address.presentpin as PRESENT_PIN,
address.presentcountry as PRESENT_COUNTRY,
address.presentphone as PRESENT_PHONE,
address.permanentaddress as PERMANENT_ADDRESS,
address.permanentcity as PERMANENT_CITY,
address.permanentstate as PERMANENT_STATE,
address.permanentpin as PERMANENT_PIN,
address.permanentcountry as PERMANENT_COUNTY,
address.permanentphone as PERMANENT_PHONE,
address.mailingaddress as MAILING_ADDRESS,
edu.10_streamname as 10_STREAM,
edu.10_institutename as 10_INSTITUTE,
edu.10_year as 10_YEAR,
edu.10_board as 10_BOARD,
edu.10_percentage as 10_PERCENTAGE,
edu.10_subjects as 10_SUBJECTS,
edu.12_streamname as 12_STREAM,
edu.12_institutename as 12_INSTITUTE,
edu.12_year as 12_YEAR,
edu.12_board as 12_BOARD,
edu.12_percentage as 12_PERCENTAGE,
edu.12_subjects as 12_SUBJECTS,
edu.g_streamname as G_STREAM,
edu.g_institutename as G_INSTITUTE,
edu.g_year as G_YEAR,
edu.g_university as G_UNIVERSITY,
edu.g_percentage as G_PERCENTAGE,
edu.g_subjects as G_SUBJECTS,
edu.pg_streamname as PG_STREAM,
edu.pg_institutename as PG_INSTITUTE,
edu.pg_year as PG_YEAR,
edu.pg_university as PG_UNIVERSITY,
edu.pg_percentage as PG_PERCENTAGE,
edu.pg_subjects as PG_SUBJECTS,
edu.m_streamname as M_STREAM,
edu.m_institutename as M_Institute,
edu.m_year as M_YEAR,
edu.m_university as M_UNIVERSITY,
edu.m_percentage as M_PERCENTAGE,
edu.m_subjects as M_SUBJECTS,
ext.stuexamcenter as EXAMCENTER,
ext.activities as ACTIVITES,
ext.awards as AWARDS,
ext.options as OPTIONS,
ext.mat as MAT_YEAR,
ext.matscore as MAT_SCORE,
ext.cat as CAT_YEAR,
ext.catscore as CAT_SCORE,
ext.gmat as GMAT_YEAR,
ext.gmatscore as GMAT_SCORE,
work.job1 as JOB1,
work.org1 as ORG1,
work.designation1 as DESIGNATION1,
work.sdate1 as START_DATE1,
work.edate1 as END_DATE1,
work.job2 as JOB2,
work.org2 as ORG2,
work.designation2 as DESIGNATION2,
work.sdate2 as START_DATE2,
work.edate2 as END_DATE2,
work.job3 as JOB3,
work.org3 as ORG3,
work.designation3 as DESIGNATION3,
work.sdate3 as START_DATE3,
work.edate3 as END_DATE3,
dd.ddno as DD_NO,
dd.dddate as DD_DATE,
dd.ddbank as DD_BANK,
payonline.receiptno as RECEIPT_NO,
payonline.txnno as TRANSACTION_NO,
payonline.status as STATUS,
payonline.amount as AMOUNT
from registration as reg
join programme as prg on reg.id=prg.stuid
join family on reg.id=family.stuid
join address on reg.id=address.stuid
join education as edu on reg.id=edu.stuid
join extradetail as ext on reg.id=ext.stuid
join workexperience as work on reg.id=work.stuid
join demanddraft as dd on reg.id=dd.stuid
join payonline on reg.id=payonline.stuid where payonline.status='success' and payonline.paydate >= '".$_POST['date1']."' and payonline.paydate <= '".$_POST['date2']."'";
$sql1=“选择
注册号,
PaynLine.regno作为表格编号,
PaynLine.paydate作为日期,
注册stufname作为名字,
注册stumname为中间名,
注册stulname为姓氏,
注册电子邮件为电子邮件,
日期格式(注册studob,“%d-%m-%Y”)为DOB,
将性别作为性别,
注册号stumobile为MOBILE,
prg.paymentmode作为paymentmode,
prg.examdate作为测试日期,
prg.examcenter作为考试中心,
公共旅馆作为旅馆,
prg.coursetype作为prg_类型,
prg.campus1作为campus1,
prg.course1作为prg_名称1,
prg.campus2作为campus2,
prg.课程2作为prg_名称2,
prg.pgd_作为pgd_利益相关者,
prg.pgd_课程1作为pgd_课程1,
prg.pgd_校区1作为pgd_校区1,
prg.pgd_课程2作为pgd_课程2,
prg.pgd_校区2作为pgd_校区2,
family.stufname作为父名,
作为父亲职业的家庭,
family.stufmobile作为MOBILE父亲,
family.stuf指定为父亲指定,
家庭。Stuffin以父亲的身份来收入,
family.stufemail作为父亲的电子邮件,
family.stumname作为母亲姓名,
作为母亲职业的家庭,
family.stummobile作为MOBILE的母亲,
family.stums指定为母亲指定,
家庭。Stumin作为母亲的收入,
family.stumemail作为母亲的电子邮件,
family.guardianname作为监护人,
family.guardianaddress作为监护人的地址,
family.guardianphone作为监护人电话,
address.presentaddress作为当前地址,
address.presentcity作为当前城市,
address.presentstate作为当前状态,
address.presentpin作为PRESENT\u PIN,
address.presentcountry作为当前国家/地区,
address.presentphone作为当前电话,
address.permanentaddress作为永久地址,
address.permanentcity作为永久城市,
address.permanentstate作为永久州,
address.permanentpin作为永久密码,
address.permanentcountry作为永久县,
address.permanentphone作为永久电话,
address.mailingaddress作为邮寄地址,
edu.10_流名称为10_流,
教育学院名称为10大学学院,
教育年度为10年,
edu.10_板作为10_板,
教育单位:10%为10%,
教育单元10个科目作为10个科目,
edu.12_流名称为12_流,
edu.12_学院名称为12_学院,
教育12年作为12年,
edu.12_板作为12_板,
教育单位12%为12%,
教育学12科作为12科,
edu.g_streamname作为g_STREAM,
edu.g_institutename作为g_INSTITUTE,
教育年作为教育年,
作为g_大学的edu.g_大学,
edu.g_百分比作为g_百分比,
教育大学科目作为大学科目,
edu.pg_streamname作为pg_STREAM,
edu.pg_institutename作为pg_INSTITUTE,
教育年度作为教育年度,
edu.pg_大学作为pg_大学,
edu.pg_百分比作为pg_百分比,
edu.PGU科目作为PGU科目,
edu.m_streamname作为m_STREAM,
曼彻斯特大学教育学院,
教育硕士年作为硕士年,
曼彻斯特大学作为曼彻斯特大学,
教育硕士学位百分比作为硕士学位百分比,
教育硕士科目作为硕士科目,
ext.EXAMCENTER作为EXAMCENTER,
外部活动作为活动,
外部奖励作为奖励,
ext.options作为选项,
外部材料作为材料年,
外部matscore作为MAT_分数,
ext.cat作为cat_年,
外部catscore作为CAT_分数,
外接gmat作为gmat大学年度,
外接gmatscore作为GMAT_分数,
work.job1作为job1,
work.org1作为org1,
工作名称1作为名称1,
work.sdate1作为开始日期1,
work.edate1作为结束日期1,
work.job2作为job2,
work.org2作为org2,
工作名称2作为名称2,
work.sdate2作为开始日期2,
work.edate2作为结束日期2,
工作。工作3作为工作3,
work.org3作为org3,
工作名称3作为名称3,
work.sdate3作为开始日期3,
work.edate3作为结束日期3,
dd.ddno作为dd_NO,
dd.dddate作为dd_日期,
dd.ddbank作为dd_银行,
付款行。收据编号作为收据编号,
PaynLine.txnno作为交易编号,
PaynLine.status作为状态,
付款行。金额作为金额
从注册为注册
以注册id=prg.stuid上的prg身份加入计划
在注册表id=family.stuid上加入家庭
注册id=address.stuid上的加入地址
以注册id=edu.stuid的教育身份加入教育
将extradetail作为ext on reg.id=ext.stuid连接
加入workexperience作为在注册表id=work.stuid上工作
将demanddraft作为注册id=dd.stuid上的dd加入
在reg.id=paynline.stuid上加入paynline,其中paynline.status='success'和paynline.paydate>='“$\u POST['date1']”和paynline.paydate在我看来,最好的解决方案是以日期、日期时间或时间戳格式保存日期。
但在您的情况下,如中所述,您可以在查询中使用和在您的条件下将它们转换为DATETIME:
StruthtoJoad(左边(Pay-No.PayLoad,PayLoad,PayLo.PayDATE),'%m/%D/%y ')在2010-07-28和'2010-07-29′/P>中,你的<代码> PayDATE < /Case>字段有哪些类型?也许你可以将这个问题简化为一个更简单的情况,以便在选择列表中没有厨房接收器?也请考虑SQL注入