Я обладаю следующим function:
function validar_nro($a){
global $operador, $num_min, $db;
selector_operador();
if(preg_match('/'.$num_min.'/', $a))
{
return $a;
} else {
//return false;
echo "Error";
//unset($a);
return $a;
}
}
Переменная $num_min
смоги быть примером $num_min = "[0]{1}[4]{1}[1]{1}[2]{1}[0-9]{7}";
Однако я хочу выполнить этот function внутри другого function, который получит данные о формуляре, и то, к чему я стремлюсь, состоит в том, чтобы данные были санкционированы перед тем, как выполнять function, сохранения в моей базе данных, логически, если информация не может быть санкционированной, я стремлюсь того, чтобы оно явилось сообщением ошибки, и не выполнил решение сохранения в моей базе данных. function реестра - следующий:
//REGISTRAR RECARGA
function registrar_recarga(){
global $db, $nro, $op;
@$user = $_REQUEST ['user'];
@$operador = $_REQUEST ['operador'];
@$nro = $_REQUEST ['nro'];
@$monto = $_REQUEST ['monto'];
@$accion = $_REQUEST ['accion'];
@$id = $_REQUEST ['id'];
selector_operador();
validar_nro($nro);
$tipo = $op;
if ($accion == "insert"){
$query = "INSERT INTO recargar (id, user, operador, tipo, nro, monto) VALUES (null, '$user', '$operador', '$tipo', '$nro', '$monto')";
$msn = "Se ha guardado en la Base de datos una solicitud de recarga <b> $op </b> al numero <b>$nro</b> por un monto de <b>$monto Bs.</b>";
}
else if ($accion == "update") {
$query = "UPDATE recargar SET nro = '$nro', monto = '$monto', operador = '$operador', tipo = '$tipo' WHERE id = '$id'";
$msn = "Se ha actualizado de manera correcta su solicitud de recarga <b> $op </b> al numero <b>$nro</b> por un monto de <b>$monto Bs.</b>";
}
else if ($accion == "eliminar") {
$query = "DELETE FROM recargar WHERE id = '$id'";
$msn = "Se ha eliminado de manera correcta su solicitud de recarga.";
}
if (mysqli_query($db, $query)) {
$_SESSION['recarga'] = $msn;
} else {
$_SESSION['recarga'] .= '<i class="fa fa-exclamation-triangle"></i> Algo ha ocurrido.<br>'. mysqli_error($db);
}
}
Также как и эта показывает мне ошибку, но таким же образом выполняет ее код и сохраняет в моей базе данных информацию, введенную в компьютер в формуляре.
Не estГЎs ничего не делая, чтобы предотвращать выполнение.
В обоих случаях, снопах один return $a
и ademГЎs также ты не санкционируешь ответ вне функции.
Она funciГіn deberГ, - чтобы возвращать true
/ false
в funciГіn, если ее funciГіn санкционирует правильно ввод или нет.
Вне ее funciГіn, - когда ты должен оценивать возвращенный результат ее funciГіn и действовать последовательно.
Например, podrГ, - чтобы быть чем-то asГ-:
if (validar_nro($nro)) {
//todo correcto! Aqui tu codigo
} else {
echo "error";
}
Другой более деревенский серьезный выбор вместо echo "error"; return $a;
один die("error");
это закончит каждое выполнение рукописного шрифта в мгновение и imprimirГЎ сообщение ошибки