buddha
14.10.2017, 22:07:32
Cześć,
Kombinuje z przerobieniem funkcji która pokazuje użytkownikowi "kto cię ostatnio odwiedził"
na funkcje "ostatnio odwiedziłeś". jest to wykonalne edytując tą funkcje?
function getMyVisitsUsers($uid) {
$search = '';
$count = $limit;
$query2 = $mysqli->query("SELECT u2,timeago FROM users_visits where u1 = '$uid' and u2 <> '".$sm['user']['id']."' order by timeago desc limit 50");
$mysqli->query("UPDATE users_visits SET notification = 1 where u1 = '$uid'");
if($query2->num_rows > 0){
while($result2 = $query2->fetch_object()){
getUserInfo($result2->u2,6);
$time = $result2->timeago;
$search.='<li>
<a href="#" class="photo" data-back-photo="1" data-src="'.$sm['search']['profile_photo'].'" onClick="goToProfile('.$sm['search']['id'].')"></a>
</li>';
}
}
return $search;
}
markonix
14.10.2017, 23:10:12
Skoro masz w tabeli informacje o tym że Z odwiedzili X i Y to z prostej logiki też wiesz, że na liście odwiedzonych przez X jest między innymi Z...
Co do samej funkcji jest napisana beznadziejnie.
buddha
15.10.2017, 00:36:02
Czyli muszę zmienić tak?
$query2 = $mysqli->query("SELECT u1,timeago FROM users_visits where u2 = '$uid' and u1 <> '".$sm['user']['id']."' order by timeago desc limit 50");
$mysqli->query("UPDATE users_visits SET notification = 1 where u2 = '$uid'");
Jestem kompletnie zielony. Uczę się na bieżąco przerabiając gotowca.
Niree
15.10.2017, 01:54:50
Nie znamy struktury bazy, nie wiadomo o co chodzi. Jak notujesz wizytę?
Rysh
15.10.2017, 12:01:54
Jeśli jesteś kompletnie zielony to może zleć to komuś kto się na tym zna?
Tomplus
15.10.2017, 12:21:49
Zamiast przerabiać poprawną funkcję, to stwórz nową, a potem użyć w miejsce gdzie istniała poprzednia.
Zamiast edytować/modyfikować tablicę w bazie, stwórz nową na potrzeby twojego małego projektu.
Jak coś popsujesz, to przynajmniej skutki będą mniej bolesne, a błędy bardziej widoczne.
buddha
15.10.2017, 14:41:53
@Tomplus masz racje, tylko problem tkwi w tym że nie potrafię napisać
prawidłowej funkcji.
Próbowałem już różnych modyfikacji kodu, niestety na dobre to nie wychodzi.
Tomplus
15.10.2017, 19:18:53
Wychodzi na to że masz braki w podstawach.
Ale przeanalizuj sobie co potrzebujesz aby stworzyć nową funkcjonalność?
Podpowiem, jeżeli chodzi o Ostatnio odwiedziłeś, to potrzebujesz informację:
- o uzytkowniku czyli $uid
- miejsca które ostatnio odwiedził
Nie znam struktury kodu strony, ale pewnie nie będzie problemu odczytać aktualną pozycję użytkownika (w razie czego pozostają wartości globalne _SERVER)
Potem tworzysz strukturę nowej tabeli:
uid, pageVisit, timeVisit
Potem tworzysz zapytanie MySQL gdzie zamiast UPDATE, tworzysz REPLACE, wtedy funkcja utworzy rekord gdy użytkownik jest pierwszy raz, a zastąpi go gdy taki rekord już istnieje - przyczym uid i pageVisit muszą być ustawione jako unikalne.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.