Общи приятели заявка

В твоя случай как записваш всичките приятели като имаш само едно място за запис на приятел?
:shock:
 
Ето базата данни :
Код:
CREATE TABLE `friends` (
  `id` int(11) NOT NULL auto_increment,
  `username` varchar(20) collate utf8_unicode_ci NOT NULL,
  `friendname` varchar(20) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=14799 ;

А тъка се записват приятелите
Код:
INSERT INTO `friends` VALUES (123, 'GO6O', 'IWAN');
 
Айде гледайте малко де, ти имаш 2 полета да си промениш, не можеш?
Tова е заявката, която я дадох в миналата тема. Ще ти кажа кое с кое да замениш.

$id - заменяш го с потребителя, чийто профил гледаш в момента.

$session->get("userinfo", "user_id") - заменяш го с ID-то на потребителя който се е логнал в момента.

[sql]$db->query("SELECT *, IF(`to` = '".$id."' OR `from` = '".$session->get("userinfo", "user_id")."', `to`, `from`) friend
FROM friends
WHERE ( `from` = '".$id."' OR `from` ='".$session->get("userinfo", "user_id")."') OR (`to` = '".$id."' OR `to` = '".$session->get("userinfo", "user_id")."')
GROUP BY`to` HAVING COUNT(*) > 1
");[/sql]
 
niksdevil каза:
А как да изкарам резултата ?
Както си го изкарваш нормално. fetch_assoc/array или там ако използваш PDO, MYSQLi.
 
<?
$db->query("SELECT *, IF(`to` = '$req_user' OR `from` = '$session->username', `to`, `from`) friend
FROM friends
WHERE ( `from` = '$req_user' OR `from` ='$session->username') OR (`to` = '$req_user' OR `to` = '$session->username')
GROUP BY`to` HAVING COUNT(*) > 1
");?>

$db->query("SELECT *, IF(`to` = '$req_user' OR `from` = '$session->username', `to`, `from`) friend
тука дава грешка

Fatal error: Call to a member function query() on a non-object
 
PHP:
$query = mysql_query("SELECT *, IF(`to` = '$req_user' OR `from` = '$session->username', `to`, `from`) friend
FROM friends
WHERE ( `from` = '$req_user' OR `from` ='$session->username') OR (`to` = '$req_user' OR `to` = '$session->username')
GROUP BY`to` HAVING COUNT(*) > 1
");
while($row = mysql_fetch_assoc($query)) {
//тук резултатите...
}
 

Back
Горе