Я в настоящее время разрабатываю сайт социальной сети, в котором отображает сообщения пользователя входа, в том числе сообщения его друзей Я успешно создал сценарий, чтобы показать все сообщения, получив первый всех друзей пользователя входа. Затем поставьте их на сеанс. Затем получите все сообщения , используя in_array();Get all friends post with mysql
MY DB SCHEMA
person_tbl
pr_id
pr_name
post_tbl
po_id
po_message
po_prid (reference pr_id)
friend_tbl
fr_id
fr_from_prid
fr_to_prid
SAMPLE DATA
pr_id pr_name
1 Jeniffer
2 Dale
3 Melissa
po_id po_prid po_message
1 2 Post by Dale
2 2 Post by Dale 2
3 1 Post by Jen
4 3 Post by Melissa
fr_id fr_from_prid fr_to_prid
1 1 2 // Jennifer and Dale were friends
Вот мой код.
$LOGIN_USER_ID = 1 // e.g id of login user (person_tbl pr_id in database)
unset($_SESSION['friends']);
$_SESSION['friends'] = array();
$frdt = (get all friends by LOGIN USER); // from database
foreach($frdt as $fkey => $fval) { // get all friends
$fr_from = $fval['fr_from_prid'];
$fr_to = $fval['fr_to_prid'];
if($LOGIN_USER_ID != $fr_from) {
$_SESSION['friends'][] = $fr_from;
}
if($LOGIN_USER_ID != $fr_to) {
$_SESSION['friends'][] = $fr_to;
}
}
$_SESSION['friends'][] = $LOGIN_USER_ID; // include login user id in friends session
// e.g display of id of friend (2, 3 and 1) 1 for login user.
$friends_of_user = $_SESSION['friends'];
$post_tbl = get_all_post();
foreach($post_tbl as $key => $val) {
$id = $val['po_id'];
if(in_array($po_prid, $friends_of_user)) {
// DISPLAY ALL POST
}
}
Как и я сказал, я успешно получил все сообщения. Однако я хочу ограничить пост при загрузке страницы, а затем, как стиль facebook, если страница прокручивается вниз, она загрузит другие сообщения. Чтобы сделать его коротким, все, что я хочу, - это выбрать пост-предел 0, 20, если пользователь прокрутит нижний предел 20, 40, затем 20, 60 и так далее. Можно ли получать сообщения только с использованием SQL-запроса без выполнения таких действий, как сеанс? Заранее спасибо.
Что делать, если fr_from_prid = 2 и fr_to_prid = 1? Вы пробовали свой код брах? Собираюсь проверить это также. Спасибо хоть. –
возможно отсутствие навыков sql? Lols. Мои коды могут отображать все записи входа, включая сообщение друзей. Предельные данные - моя проблема, хотя –
Я оскорбил тебя, брах? Или ты просто переигрываешь. Так же, как я сказал, я успешно получил отображение всех сообщений. Во всяком случае, я уже пробовал ваш код. Кстати, я говорю сам с собой, когда говорил, что мне не хватает моих навыков работы с SQL. Вот почему я использую сеанс. запомнить? Я ценю ваши усилия. Легкий douchebag! –