13:07
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 1
  • 1
Модератор форума: AXE, Weddew  
Поисковой запрос в БД
ImperealДата: Понедельник, 08.08.2011, 19:51 | Сообщение # 1
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
Вопрос к тем кто очень хорошо знает и работает с mySQL.
Нужно сделать запрос что бы узнать в каких строках поле, ну например, AccountName = Вася(их может не быть во обще,а может быть от 1 до 5), что бы далее из этих строк получать информацию.

Желательно поподробнее, так как я с БД не работаю, в моде с бд работает другой человек, но он куда то пропал и не оявляется, а работа стоит.
Спасибо!



Прощай самп-рус =Р

Сообщение отредактировал Impereal - Понедельник, 08.08.2011, 19:52
phpcoderДата: Понедельник, 08.08.2011, 20:29 | Сообщение # 2
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 200
Награды: 3
Репутация: 232
Замечания: 0%
Статус:
Code
SELECT * `ТАБЛИЦА` WHERE `AccountName` = 'Вася';



Покупаю RP/RPG сервера. Бюджет: 30 тыс. руб.
ImperealДата: Понедельник, 08.08.2011, 20:33 | Сообщение # 3
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
phpcoder, Да это понял, а что дальше?
Возможно я спрашиваю бред, но я 0 в SQL,



Прощай самп-рус =Р
AlcoholikДата: Понедельник, 08.08.2011, 20:53 | Сообщение # 4
Мастер джэдай
Группа: Администратор
Сообщений: 8299
Награды: 111
Город: Санкт-Петербург
Репутация: 6085
Статус:
$vasya = mysql_fetch_array(mysql_query('SELECT * FROM `table` WHERE `name`= `Вася`'));
Написано на пхп, смысл один.
Если результат положительный вернёт 1, если нет будет 0.
if($vasya) echo ' Вася сцука зареган';

Добавлено (08.08.2011, 20:53)
---------------------------------------------
А если для сампа, то есть уже готовые функции. Вот пример для плагина sampmysql
public MySQLCheckAccount(sqlplayersname[]) // by Luk0r
{
new query[128];
new escstr[MAX_PLAYER_NAME];
samp_mysql_real_escape_string(sqlplayersname, escstr);
format(query, sizeof(query), "SELECT id FROM table WHERE LOWER(Name) = LOWER('%s') LIMIT 1", escstr);
samp_mysql_query(query);
//if (DEBUG) SQLLog(query);
samp_mysql_store_result();
if (samp_mysql_num_rows()==0)
{
return 0;
}
else
{
new strid[32];
new intid;
samp_mysql_fetch_row(strid);
intid = strval(strid);
return intid;
}
}
Проверяется также.

new vasya = MySQLCheckAccount(vasya)
if(vasya) return print("Вася сцука зареган");


if(isset($beer)&&isset($girl)) { drink($beer);fuck($girl); }else die();
Мониторинг sa:mp серверов


Приватно никого не консультирую, моды также не пишу, ни так, ни за деньги.
Моя ICQ 675715, пишу только с неё. Все остальные Роачи фейки, ничего я не продаю и продавать не буду, вас разводят.
ImperealДата: Понедельник, 08.08.2011, 20:59 | Сообщение # 5
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
KroN, Понимаешь, это не совсем то что ты подумал, это не так что аккаунты, что может быть только одна строка в который AccountName = Вася!
Их может быть 0,а может 5 например.
Мне нужно получить как то строки ВСЕ в которых AccountName равно Вася.
Что бы потом из этих строк получить значения.



Прощай самп-рус =Р

Сообщение отредактировал Impereal - Понедельник, 08.08.2011, 21:01
KniefДата: Понедельник, 08.08.2011, 21:19 | Сообщение # 6
Освоившийся
Группа: Пользователи
Сообщений: 79
Награды: 2
Город: Ульяновск
Репутация: 39
Замечания: 0%
Статус:
new qwery[128];
format(qwery,sizeof(qwery),"SELECT lala FROM NAMETAble whereAccountName ='Вася' ");
mysql_query(qwery);
mysql_store_result();
return mysql_num_rows();

// Вот это покажет сколько встречается запись Вася
//Если дословно читать, то я понел, так что тебе нужно узнать в каких полях встречается Вася, т.е знать ид записи бд
new vid[10]; // под каждым массивом будет ид записи бд
for(new i=1;i<=250;i++){
new qwery[128],row[128];
format(qwery,sizeof(qwery),"SELECT id FROM NAMETAble where AccountName='Вася' ");
mysql_query(qwery);
mysql_store_result();
if(mysql_fetch_row(row))
vid[I]=row;
}
}

ImperealДата: Понедельник, 08.08.2011, 21:30 | Сообщение # 7
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
Quote (Knief)
// Вот это покажет сколько встречается запись Вася //Если дословно читать, то я понел, так что тебе нужно узнать в каких полях встречается Вася, т.е знать ид записи бд new vid[10]; // под каждым массивом будет ид записи бд for(new i=1;i<=250;i++){ new qwery[128],row[128]; format(qwery,sizeof(qwery),"SELECT id FROM NAMETAble where AccountName='Вася' "); mysql_query(qwery); mysql_store_result(); if(mysql_fetch_row(row)) vid[I]=row; } }

То есть vid[номер] это иды строк в которых поле AccountName = Вася?
То есть что бы потом извлечь из этих строк значения других полей я могу использовать иды записаные в vid[...]?



Прощай самп-рус =Р
KniefДата: Понедельник, 08.08.2011, 21:33 | Сообщение # 8
Освоившийся
Группа: Пользователи
Сообщений: 79
Награды: 2
Город: Ульяновск
Репутация: 39
Замечания: 0%
Статус:
Да, совершенно верно
ImperealДата: Понедельник, 08.08.2011, 21:39 | Сообщение # 9
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
Зачем тут цикл?Оо
И почему именно 250 раз будет выполнятся?



Прощай самп-рус =Р
KniefДата: Понедельник, 08.08.2011, 22:13 | Сообщение # 10
Освоившийся
Группа: Пользователи
Сообщений: 79
Награды: 2
Город: Ульяновск
Репутация: 39
Замечания: 0%
Статус:
250 - просто число которое пришло мне в голову у меня лично использовано mysql_num_rows();
точно блин, насчет цикла, забыл
строчку
format(qwery,sizeof(qwery),"SELECT id FROM NAMETAble where AccountName='Вася' ");
исправить
format(qwery,sizeof(qwery),"SELECT id FROM NAMETAble where AccountName='Вася' and id='%d' ",i);

без цикла результат, будет корявым, если как говорит автор, запись с васей там не одна, а с циклом, конкретезирует ид, там либо есть запись, либо нет. А вообще это просто пример, который не провярался, но примерно по принципу, у самого сервер весь на mysql всё что на серваке, всё грузится из бд

ImperealДата: Понедельник, 08.08.2011, 23:17 | Сообщение # 11
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
Ладно спасибо!
Сделал по другому, отдельное спасибо toneysix.
Модераторы, тему закройте пожалуйсто!



Прощай самп-рус =Р

Сообщение отредактировал Impereal - Понедельник, 08.08.2011, 23:20
  • Страница 1 из 1
  • 1
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua