Использование псевдонима SQL (as) в PHP - PullRequest
0 голосов
/ 15 января 2012

Я использую следующий запрос для извлечения записей из базы данных:

$query = "SELECT password, salt, 'jobseeker' as type
FROM ip_jobseekers
WHERE ipJ_username = '$username'
UNION
SELECT password, salt, 'company' as type
FROM ip_companies
WHERE ipC_username = '$username';";

$result = mysql_query($query);

//No Such User
if (mysql_num_rows($result) < 1) {
    header('Location: login.php?login=fail'); exit;}

для создания нового сеанса:

//login successful
else {$_SESSION['user'] = $username;}

Я хочу включить тип пользователя всеанс, чтобы я мог указать, какой контент передается пользователю.Можно ли использовать для этого части «company» как тип »и« ищущий работу »как тип»?Я сделал несколько попыток сделать это, но у меня не было успеха.

Любая помощь будет принята с благодарностью.

Спасибо.Кай.

Ответы [ 3 ]

1 голос
/ 15 января 2012

Абсолютно нет никакой разницы между "обычными" и псевдонимными полями. Вы можете использовать последний, а также любой другой.

0 голосов
/ 15 января 2012

чтобы найти любую ошибку в вашем запросе, вы можете запустить запрос, как показано ниже

$result = mysql_query($query) or trigger_error(mysql_error()." ".$query);

, для тестирования, которое вы можете использовать выше, и вы можете перенаправить на страницу пользовательских ошибок в рабочей среде.Мое личное предложение - использовать PDO.используйте объектно-ориентированные программы для более быстрого выполнения кода и получения стандартной структуры.

0 голосов
/ 15 января 2012

Прежде всего, вы используете набор функций mysql_, которые очень опасны, и вам нужно перемещаться по всему коду из ASAP.

Далее, вы НЕ ДОЛЖНЫ собирать запросы, подобные этому, потому что ваше приложение повсеместно превратится в этого гиганта SQL (в HTML, в представлениях, ВЕЗДЕ), вы, вероятно, должны использовать какую-то систему классов / объектов. где вы обернетесь вокруг SQL.

И вы должны знать о предложении SQL AND (я чувствую себя ужасно, связывая w3schools, но это все, что я могу найти прямо сейчас).

...