Hi all! I am trying to validate data in the form prior to submitting the form with existing data in the database. Basically I am comparing "start time", "end time" and "date" to see if an entry with those conditions already exists. The records get added without any errors or validation. I have searched various forums and wrote the code based on that, but it may have errors. Please help!! My PHP plugin is set to (OnBeforeProcess). Here is the code
if (!$formModel->isNewRecord()) {
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$thisStartTime = $formModel->formData['table___start_time'];
$thisEndTime = $formModel->formData['table___end_time'];
$thisDate = $formModel->formData['table___date'];
$query->select(COUNT('*'))->from('table')->where('start_time >= ' . $db->quote($thisStartTime) and 'end_time <= ' . $db->quote($thisEndTime) and 'date = ' . $db->quote($thisDate));
$db->setQuery($query);
$count = $db->loadResult();
if ($count > 0)
{
return true;
$formModel->getForm()->error = "An Assignment for that time and date already exists";
}
}
return false;
if (!$formModel->isNewRecord()) {
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$thisStartTime = $formModel->formData['table___start_time'];
$thisEndTime = $formModel->formData['table___end_time'];
$thisDate = $formModel->formData['table___date'];
$query->select(COUNT('*'))->from('table')->where('start_time >= ' . $db->quote($thisStartTime) and 'end_time <= ' . $db->quote($thisEndTime) and 'date = ' . $db->quote($thisDate));
$db->setQuery($query);
$count = $db->loadResult();
if ($count > 0)
{
return true;
$formModel->getForm()->error = "An Assignment for that time and date already exists";
}
}
return false;