У меня есть база rdb, есть таблица users.
В таблице есть поле nick. Как осуществить поиск в базе данных по этому имени и вывести все поля, которые есть в одном ряду с этим ником?
Также есть поле active. Как после того, как будет найден искомый ряд (это делалось при поиске в поле nick), нужно записать туда значение “1”.
Как это осуществить? Про MySQL в моём самоучителе сказано буквально страниц 5-6, только основы (коннект, создание, запись, чтение и всё). Не могли бы Вы выложить уже готовый код сюда в тему?
И желательно ссылку на какой-нибудь самоучитель по MySQL на русском языке, плз…
Спустя 43 минуты, 42 секунды (10.09.2006 - 14:53) vasa_c написал(а):
Работа с MySQL из PHP — http://ru.php.net/mysql
Русскоязычный сайт по MySQL — http://mysql.ru/ (в разделе документация есть перевод мануала)
Вообще же для составления запросов и т.д. желательно подучить сам язык SQL (одной из реализаций которого является MySQL). В гугле на запрос "sql" дается достаточно много ссылок.
Почитав это все, я думаю ты сможешь решить свою задачу самостоятельно.
Могу обратить твое внимание на запросы типа
select — выборка из БД
update — изменение значений полей
И раздел where этих запросов, позволяющий указать условия выборки/изменения
Русскоязычный сайт по MySQL — http://mysql.ru/ (в разделе документация есть перевод мануала)
Вообще же для составления запросов и т.д. желательно подучить сам язык SQL (одной из реализаций которого является MySQL). В гугле на запрос "sql" дается достаточно много ссылок.
Почитав это все, я думаю ты сможешь решить свою задачу самостоятельно.
Могу обратить твое внимание на запросы типа
select — выборка из БД
update — изменение значений полей
И раздел where этих запросов, позволяющий указать условия выборки/изменения
Спустя 18 минут, 16 секунд (10.09.2006 - 15:12) PantiL написал(а):
Никогда не просите "ДАЙТЕ ГОТОВЫЙ КОД" - так никто не захочет помогать.<br>А подсказать не трудно :)<br>
<?php //Вот так осуществляем поиск по полю nick $sNick = "Pupkin"; $sQuery = "SELECT * FROM `users` WHERE `nick`='$sNick' ;"; $rResource = mysql_query($sQuery); // if(mysql_num_rows($rResource)) { $aUser = mysql_fetch_array($rResource); foreach($aUser as $sStr) { echo "$sStr "; } } else { echo "Такого пользователя нет"; } //А теперь запишем "1" в поле activ $sQuery = "UPDATE `users` SET `activ` = '1' WHERE `nick` ='$sNick' ;"; mysql_query($sQuery); ?>
Спустя 1 день, 2 часа, 5 минут, 29 секунд (11.09.2006 - 17:17) Rem написал(а):
Пантил большое спасибо!
2 vasa_c, наскока я понял из документации это делается так:
2 vasa_c, наскока я понял из документации это делается так:
CODE
$sql="select поля from таблица";
$rs=mysql_query($sql) or die(mysql_error());
list ($поля) = mysql_fetch_row($rs);
Изменение данных
$sql = "UPDATE `таблица` SET поле= '$значение, поле='$значение" WHERE поле= '$значение";
$result=mysql_query($sql);
$rs=mysql_query($sql) or die(mysql_error());
list ($поля) = mysql_fetch_row($rs);
Изменение данных
$sql = "UPDATE `таблица` SET поле= '$значение, поле='$значение" WHERE поле= '$значение";
$result=mysql_query($sql);
Спустя 6 минут, 19 секунд (11.09.2006 - 17:23) vasa_c написал(а):
Нет, это делается не так. Это делается так, как сказал PantiL.
Так же почитай про экранирование входных данных:
www.php.net/mysql_escape_string
www.phpfaq.ru/slashes
Так же почитай про экранирование входных данных:
www.php.net/mysql_escape_string
www.phpfaq.ru/slashes
Спустя 1 день, 18 часов, 35 минут, 17 секунд (13.09.2006 - 11:59) Rem написал(а):
Ладно, спасибо.
У меня возник ещё один вопрос. Я вывожу из таблицы в БД все поля (тоже в таблицу на сайте), как можно их упорядочить не по номеру строки (0,1,2,...), а вот по значениям в определённой ячейке, например "rating"?
У меня возник ещё один вопрос. Я вывожу из таблицы в БД все поля (тоже в таблицу на сайте), как можно их упорядочить не по номеру строки (0,1,2,...), а вот по значениям в определённой ячейке, например "rating"?
Спустя 2 часа, 20 минут, 9 секунд (13.09.2006 - 14:19) PantiL написал(а):
//Запрос на получение записей отсортированных по полю rating $sQuery = "SELECT * FROM `table` ORDER BY `rating` ;"; //Запрос на получение записей отсортированных по полю rating в обратном порядке $sQuery = "SELECT * FROM `table` ORDER BY `rating` DESC;";
Спустя 1 день, 9 минут, 3 секунды (14.09.2006 - 14:28) Rem написал(а):
Извините, но ещё один вопрос: как узнать сколько всего записей в таблице?? и вывести все записи но только поля id, nick, rating. Сам я пробовал делать, но вот выдавалась какая-то ошибка постоянно (когда он пытался упорядочивать по rating в обратном порядке)
Спустя 1 час, 14 минут, 27 секунд (14.09.2006 - 15:42) vasa_c написал(а):
Rem, так вот и покажи, что ты пробовал делать и какая ошибка выдавалась.
И все-таки я бы советывал тебе для начала попробовать почитать документацию. Хотя бы в самом базовом виде.
И все-таки я бы советывал тебе для начала попробовать почитать документацию. Хотя бы в самом базовом виде.
Спустя 2 часа, 10 минут, 27 секунд (14.09.2006 - 17:53) PantiL написал(а):
$sQuery = "SELECT * FROM `users` ORDER BY `rating` ;"; $rRes = mysql_query($sQuery); echo "Всего записей - ".mysql_num_rows($rRes)." "; while($oUser = mysq_fetch_object($rRes)) { echo "$oUser->id - $oUser->nick - $oUser->rating "; }
Получаем все записи упорядоченные по рейтингу и выводи нужные поля
_____________
tesseract (10:09:16 1/06/2007)
к вопросу о вчерашних скриптостраданиях. Только что кодер знакомый прислал, нашёл в коде программы, написанной уволенным коллегой незадолго до ухода:
#define TRUE FALSE //счастливой отладки <ВЦ>
такого извращённого юмора ещё не встречал
Rouse_ (10:09:56 1/06/2007)
#define true ((rand() % 2) ? true : false) //с первым апреля