$r = mysql_query("SELECT * FROM friends WHERE friends_users = '$user' and friends_lodin = '$view_login'")
узнать есть ли такое значение если да то пользователь уже в друзьях
А…Так ты контакт взломал, и теперь пытаешься всем в друзья добавиться?))
$r = mysql_query("SELECT *FROM friends WHERE friends_users = '$user' and friends_lodin = '$view_login'") ;
if (mysql_num_rows($r)){
else "Пользователь $view_login уже в друзьях";
}
else{
$r = mysql_query("INSERT INTO friends (friends_users,friends_lodin,friends_date) VALUES ('$user','$view_login','$friends_data')");
else "Пользователь $view_login добавлен в друзьях";
}
Хотя честно я хз про код, лень мне в читываться, но принцип про mysql_num_rows я думаю понял?
Зачем выбирать все записи с данными SELECT * FROM и получать их от мускуля? Когда count подсчитать можно? А если мне надо подсчитать количество статей в категории – тоже SELECT * вместе с текстами статей по несколько килобайт?
Зачем делать два запроса (проверку и, собственно, вставку), если вполне можно обойтись только вставкой? Никогда нельзя забывать про оптимизацию.
Цель алгоритма – вставить новую запись или сообщить о том, что такая уже имеется. Значит можно сделать вставку, и проверить кол-во вставленных строк. Если mysql_affected_rows возвращает 1, значит такой записи не было и была создана новая, если 0 – значит такая уже была и нужно выдать ошибку.
Нет. Если у тебя есть желание и хоть малейшие способности к программированию – напишешь сам, используя мануалы и гугл. А если не сможешь, бросай это дело и не выпрашивай на форумах, чтоб тебе все до последней запятой расписывали.
бросай это дело и не выпрашивай на форумах
—————————
Я вот одного не пойму, разве самим не неприятно выклянчивать элементарные (на 5 минут почитать) готовые решения, если и бросаемые кем-то добрым (по неопытности общения), то как бросают обглоданную кость в дорожную грязь для нищего (умом). При этом выступая в роли этакого поднимателя самооценки для форумного контингента, в стиле "я думал – я туповат, но по сравнению с ЭТИМ – я гений"?
Я на всяк случай напрямую тонко намекну для ТС: Дима, это не твой вопрос такой сложный, что ты пять постов сам с собой разговаривал, это ты уже задрал всех до импотенции пальцев.
$r = mysql_query("SELECT * FROM friends WHERE friends_users = '$user' and friends_lodin = '$view_login'")
узнать есть ли такое значение если да то пользователь уже в друзьях
$r = mysql_query("SELECT count(friends_users) as num FROM friends WHERE friends_users = '$user' and friends_lodin = '$view_login'") ;
$m1 = mysql_fetch_array($r1);
$fr = $m1["num"];
if ( $fr != 0)
{
else "Пользователь $view_login уже в друзьях";
}
elce
{
$r = mysql_query("INSERT INTO friends (friends_users,friends_lodin,friends_date) VALUES ('$user','$view_login','$friends_data')");
else "Пользователь $view_loginдобавлен в друзьях";
}
я вот так сделал уже кто ещё как предложит и как лучше,
пойду попробую
Все работает всем спасибо!
Кто ещё чего предложит или удалить тему?
Феерическая тема, я скриншот сделал. Никому не дам!!!
))
А…Так ты контакт взломал, и теперь пытаешься всем в друзья добавиться?))
$r = mysql_query("SELECT *FROM friends WHERE friends_users = '$user' and friends_lodin = '$view_login'") ;
if (mysql_num_rows($r)){
else "Пользователь $view_login уже в друзьях";
}
else{
$r = mysql_query("INSERT INTO friends (friends_users,friends_lodin,friends_date) VALUES ('$user','$view_login','$friends_data')");
else "Пользователь $view_login добавлен в друзьях";
}
Хотя честно я хз про код, лень мне в читываться, но принцип про mysql_num_rows я думаю понял?
Зачем выбирать все записи с данными SELECT * FROM и получать их от мускуля? Когда count подсчитать можно? А если мне надо подсчитать количество статей в категории – тоже SELECT * вместе с текстами статей по несколько килобайт?
ну это ясно что можно по одному полю
Зачем делать два запроса (проверку и, собственно, вставку), если вполне можно обойтись только вставкой? Никогда нельзя забывать про оптимизацию.
Цель алгоритма – вставить новую запись или сообщить о том, что такая уже имеется. Значит можно сделать вставку, и проверить кол-во вставленных строк. Если mysql_affected_rows возвращает 1, значит такой записи не было и была создана новая, если 0 – значит такая уже была и нужно выдать ошибку.
#9
ну это ясно что можно по одному полю
——————
Я номеру #7 это адресовал, не тебе. Чегой-то он вообще прогнал беса.
Давно не заходил, прочитал и по ржал, спс.
P.S. О великие боги MySQL пошлите нам триггеры) http://habrahabr.ru/blogs/mysql/37693/
#10 пример можешь написать?
Нет. Если у тебя есть желание и хоть малейшие способности к программированию – напишешь сам, используя мануалы и гугл. А если не сможешь, бросай это дело и не выпрашивай на форумах, чтоб тебе все до последней запятой расписывали.
бросай это дело и не выпрашивай на форумах
—————————
Я вот одного не пойму, разве самим не неприятно выклянчивать элементарные (на 5 минут почитать) готовые решения, если и бросаемые кем-то добрым (по неопытности общения), то как бросают обглоданную кость в дорожную грязь для нищего (умом). При этом выступая в роли этакого поднимателя самооценки для форумного контингента, в стиле "я думал – я туповат, но по сравнению с ЭТИМ – я гений"?
Я на всяк случай напрямую тонко намекну для ТС: Дима, это не твой вопрос такой сложный, что ты пять постов сам с собой разговаривал, это ты уже задрал всех до импотенции пальцев.
Зачем проверять? моно поле изначально сделать "UNIQUE"