return в PHP???
Вот кусок кода:
Код:
if($_GET['type']=="reg"){
$query="INSERT INTO USERS_TABLE(game,login,pass) VALUES(\"$game\",\"$login\",\"$pass\")";
$result=mysql_query($query);
$query="INSERT INTO USERS_TABLE(game,login,pass) VALUES(\"$game\",\"$login\",\"$pass\")";
$result=mysql_query($query);
После чего на вернуть некоторые значения.В частности:
Result = 0 - новый пользователь зарегистрирован успешно
Result = 1 - такой пользователь уже существует
Result = 2 - все остальные ошибки, типа "слишком много подключений к базе" и т.п.
Как это сделать???
Я так понимаю следующим образом:
Код:
if($result) return 0;
(перед этим сделать выборку из базы)
if($login==login) return 1;
else return 2;
(перед этим сделать выборку из базы)
if($login==login) return 1;
else return 2;
прав я или нет?? Помогите, plz, буду очень признателен...
и в какой переменной эти коды будут храниться?
return - это метод для возвращения результатов работы функции:)
например функция
function cleandata($data)
{
$data = preg_replace("#(http:\/\/)#",'',$data);
return $data;
}
Эта функция будет вырезать "http://" из строки $data и возвращать результат.
например пишем
$url = "http://interuser.com";
$url = cleandata($url);
echo $url;
получаем просто interuser.com
что касается твоего примера то создай функцию которая соединяется и отправляет запрос а потом возвращает результат поверяя его
то есть если ошибка return 0 если строка содержится return 1 и так далее...
. а ты ей просто будешь задавать содержание запроса
Это в общих словах, дольше лень по клаве стучать и так принцип понятен :)
Ок, всем спасибо, понял.
Цитата:
Originally posted by dodger
Как это сделать???
Я так понимаю следующим образом:
Как это сделать???
Я так понимаю следующим образом:
Код:
if($result) return 0;
(перед этим сделать выборку из базы)
if($login==login) return 1;
else return 2;
(перед этим сделать выборку из базы)
if($login==login) return 1;
else return 2;
Код:
return ( ($login==login) ? 1 : 2 );
imho немножко симпатичнее.
Код:
function cleandata($data)
{
$data = preg_replace("#(http:\/\/)#",'',$data);
echo "$data";
}
$url = "http://interuser.com";
$url = cleandata($url);
echo $url;
{
$data = preg_replace("#(http:\/\/)#",'',$data);
echo "$data";
}
$url = "http://interuser.com";
$url = cleandata($url);
echo $url;
При этом 2 раза interuser.com из за 2ух echo выводится не будет, и если убрать " echo $url; " , то interuser.com тоже выведется один раз.
Цитата: lomo4el
я тоже недопонимаю немного, можно же заменить return например echo результат будет тот же.
echo в поток (читай - браузеру) что-то выдаёт. return - возвращает результат из функции. это суть разные вещи.