Здравствуйте!!! У меня получилась такая ситуация - есть таблица, где хранятся данные об автомобилях пользователей. Идентификатором является ID пользователя, и он может повторяться (вдруг пользователь захочет добавить больше одного автомобиля). Надеюсь, что объяснил понятно и приводить всю таблицу не надо. А функции PHP? например, самая понятная мне mysql_fetch_assoc выводит только одну строку. На сайте в описаниях функций для mysql что-то видел про алиасы, но не понял, как их использовать.
Пробовал конструкцию типа
PHP:
скопировать код в буфер обмена
$query = "SELECT marka as marka2
FROM `automobiles`
WHERE `client_id`='{$_COOKIE['id']}'
LIMIT 1";
$query2 = "SELECT marka
FROM `automobiles`
WHERE `client_id`='{$_COOKIE['id']}'
LIMIT 1";
echo $auto['marka2'];
echo $auto2 ['marka'];
Но, как я понял, mysql_query срабатывает только один раз....
Пожалуйста, подскажите
Может как-то по-другому можно реализовать то, что я хочу.
Я хочу, чтобы пользователь заходил на страницу и ему (то есть его client_id) выдавалась вся информация об автомобилях, которые он добавил (добавить автомобилей он может сколько угодно).
Неужели надо получать содержимое всей таблицы и выводить для отдельного клиента информация с помощью цикла, обрабатывая все значения таблицы. Тогда может как-то отсортировать по client_id строки таблицы??? К сожалению, не знаю, как называется такая функция (вроде есть)??? Вообщем, объясните новичку...
Везде по всему интренету, в том числе и здесь, если ты щелкнешь по названию функции в твоем коде, ты увидишь, что ее вызывать надо в цикле и она будет возвращать по одной строке.
Алиас - псевдоним. Можно назначать столбцам, таблицам, процедурам, подзапросам, представлениям. Как правило, он короткий и используется, чтоб не писать длинное настоящее имя объекта. Либо если в запросе используется один объект БД два раза - чтоб их стало как будто два.
JustUserR пишет:koka пишет:Идентификатором является ID пользователя, и он может повторяться (вдруг пользователь захочет добавить больше одного автомобиля).
В данном случае это не ключевой идентификатор а поле для ограничения условия в выборке - по нему к примеру можно составить JOIN-запрос для получения информации о пользователя по текущей информации об автомобиле А сами записи строк автомобилей должны содержать уникальный ключевой индекс - чтобы каждую записть можно было однозначно выбрать и связать с ней данные
Спасибо всем за советы!!! Но вот совершенно неожиданно возникла другая проблема. Я решил добавить в таблицу поле auto_id (c auto_increment); Но появляется ошибка
CODE (
htmlphp):
скопировать код в буфер обмена
You have an error in your SQL syntax
; check the manual that corresponds to your
MySQL server version
for the right syntax to use near
'condition,privod,country,comment) VALUES('Mazda
', 'MPV
', ' at line
1
Запрос для бд следующий, в скрипте регистрации работает нормально
PHP:
скопировать код в буфер обмена
$result = mysql_query("INSERT INTO automobiles(marka,model,dvig_nomer,dvig_cod,dvig_value,kyzov,kpp,kpp_number,vin,year,month,abs,gyr,condition,privod,country,comment) VALUES('{$_POST['marka']}', '{$_POST['model']}',
'{$_POST['dvig_nomer']}',
'{$_POST['dvig_cod']}',
'{$_POST['dvig_value']}',
'{$_POST['kyzov']}',
'{$_POST['kpp']}',
'{$_POST['kpp_number']}',
'{$_POST['vin']}',
'{$_POST['year']}',
'{$_POST['month']}',
'{$_POST['abs']}',
'{$_POST['gyr']}',
'{$_POST['condition']}',
'{$_POST['privod']}',
'{$_POST['country']}',
'{$_POST['comment']}')");
Причём этот запрос даже не работает без auto_id в таблице, то есть вообще без идентификаторов. Если я не перечисляю поля таблицы (не знаю как это называется)