Hallo,
erstmal habe ich folgenden Code:
PHP
function validateUserData($type, $value) {
$validData = TRUE;
try {
switch ($type) {
case ('ip' || 'email' || 'username'):
$answer = file_get_contents('http://www.stopforumspam.com/api?'.$type.'='.$value);
if (preg_match('/\<response success="true"\>/i', $answer) === 1)
if (preg_match('/\<appears\>yes\<\/appears\>/i', $answer) === 1) $validData = FALSE;
break;
case ('ip,email' || 'ip,username' || 'email,ip' || 'email,username' || 'username,ip' || 'username,email'):
$type = explode($type, ',');
$value = explode($value, ',');
$answer1 = file_get_contents('http://www.stopforumspam.com/api?'.$type[0].'='.$value[0]);
$answer2 = file_get_contents('http://www.stopforumspam.com/api?'.$type[1].'='.$value[1]);
if (preg_match('/\<response success="true"\>/i', $answer1) === 1 || preg_match('/\<response success="true"\>/i', $answer2) === 1)
if (preg_match('/\<appears\>yes\<\/appears\>/i', $answer1) === 1 || preg_match('/\<appears\>yes\<\/appears\>/i', $answer2) === 1) $validData = FALSE;
break;
case ('ip,email,username' || 'ip,username,email' || 'email,ip,username' || 'email,username,ip' || 'username,ip,email' || 'username,email,ip'):
$type = explode($type, ',');
$value = explode($value, ',');
$answer1 = file_get_contents('http://www.stopforumspam.com/api?'.$type[0].'='.$value[0]);
$answer2 = file_get_contents('http://www.stopforumspam.com/api?'.$type[1].'='.$value[1]);
$answer3 = file_get_contents('http://www.stopforumspam.com/api?'.$type[2].'='.$value[2]);
if (preg_match('/\<response success="true"\>/i', $answer1) === 1 || preg_match('/\<response success="true"\>/i', $answer2) === 1 || preg_match('/\<response success="true"\>/i', $answer3) === 1)
if (preg_match('/\<appears\>yes\<\/appears\>/i', $answer1) === 1 || preg_match('/\<appears\>yes\<\/appears\>/i', $answer2) === 1 || preg_match('/\<appears\>yes\<\/appears\>/i', $answer3) === 1) $validData = FALSE;
break;
default:
$validData = 'ERROR('.$GLOBALS['errorCodes'][5].')';
var_dump(1);
break;
}
} catch (Exception $ex) { $validData = 'ERROR('.$GLOBALS['errorCodes'][6].')'; }
return $validData;
}
Alles anzeigen
Wenn ich nun einen $type von z.B. "25" angebe, bleibt $validData bzw. die Funktion TRUE, sie sollte aber eigentlich 'ERROR('.$GLOBALS['errorCodes'][5].')' werden (siehe 'default:')
kann mir vllt. irgendjemand sagen, warum das so ist
Danke schonmal für jegliche Hilfe
EDIT: 'ERROR('.$GLOBALS['errorCodes'][5].')' soll folgendes ergeben: "ERROR(wrongArgumentOfFunction)"