Êtes-vous sûr que les données insérées sont réellement NULL, et pas simplement une chaîne vide ?
Après cela, remplacez startPeriod IS NOT NULL
à TRIM(startPeriod) <> ""
OU
query = "SELECT date_format(startPeriod,'%a, %M, %d, %Y') as startDate,
date_format(startTime,'%I:%i%p') as startTime,
date_format(endTime,'%I:%i%p') as endTime,
jobLocation,jobId,
hoursWorked
FROM users,paycheck
WHERE users.userId = '" . $_SESSION['userId'] .
"' AND userId = empId
AND (startPeriod != '0000-00-00' OR startPeriod IS NOT NULL)
ORDER BY paycheck.startPeriod DESC";
cela peut-il vous aider.