Ray,
Tech Support from the server changed a line in a function in WAVT_Scripts_PHP.php to escape the ? from the regular expression. Does this make sense to you?
function WAValidateRX($value,$regExStr,$required,$number) {
$value = $value;
$WAFV_ErrorMessage = "";
$isValid = true;
$regExStr = str_replace(""", '"', $regExStr);
$extraArgs = substr($regExStr,strrpos($regExStr,"/")+1);
$regExStrStripped = substr($regExStr,strpos($regExStr,"/")+1,strrpos($regExStr,"/")-strpos($regExStr,"/")-1);
if (!(!$required && $value=="")) {
if (strpos($extraArgs,"i") >= 0) {
$regExStrStripped=str_replace('?','\?',$regExStrStripped); // FIX FOR BROKEN REGEX - Hostgator
$theMatch = eregi($regExStrStripped, $value);
}
else {
$theMatch = ereg($regExStrStripped, $value);
}
if (!$theMatch) {
$theMatch = preg_match($regExStr, $value);
if (!$theMatch) {
$isValid = false;
}
}
}
if (!$isValid) {
$WAFV_ErrorMessage .= ",".$number;
}
return $WAFV_ErrorMessage;
}
Thanks,
Jack