Autor Zpráva
Kiwwik
Profil *
ahojte pomocou tochto kodu sa pokusam vypisat priatelov usera ktory su online

mam tabulky

mitglieder
user_id / id usera
user / user
password / passwod
...
last_login  / posledny prihlaseny ve formatu time() v databeze to ulozuju do varchar(64)


freunde
id 
user_id / id usera kterej poslal pozadavku o pratelsky
user_id_freund / id usere kterej pozadavku muze prijat
freunde / kdys user neprijme tak 0 kdys prijme tak 1



<?php
$time23 = (time()-60*15);
$sql202=mysql_query("select * from freunde,mitglieder WHERE freunde.user_id_freund = '$user_id_session' OR freunde.user_id = '$user_id_session' AND freunde.freunde = '1' AND mitglieder.last_login>'".$time23."' AND mitglieder.online = '1' GROUP BY mitglieder.user_id") or die (mysql_error()); 
if (mysql_num_rows($sql202) > 0) {
while($result202=mysql_fetch_array($sql202)){
?>
- <?php user_a($result202['user_id']); ?><br />
<?php
}
}
?>
Kiwwik
Profil *
ale miesto toho aby vypisalo userov online vypise to vsetkych priatelov ....
Tomashek
Profil
to je ovšem pěkné
Tomashek
Profil
sry, neviděl jsem příspěvek
Kiwwik
Profil *
Tomashek
no to neni pekne ... ja nevim proc to tam vypise vsechnych useru kdys sem jasen do where zadal ze tam ma vypsat jenom tych ktery maji online 1 a sou neaktivny max 15 min.
Alphard
Profil
nevím, jak to máte propojené a ani mě to nějak moc nezajímá, ale počítáte s tím, že pokud bude splněna první podmínka před OR, sql už zbytek nebude vůbec vyhodnocovat?

ukládat time() do varchar by v tomto případě sice nemělo způsobovat problémy (maximálně drobné zpomalení), ale není to zdaleka ideální
Kiwwik
Profil *
Alphard
a jak je to pak idealni ?
petr6.
Profil *
počítáte s tím, že pokud bude splněna první podmínka před OR, sql už zbytek nebude vůbec vyhodnocovat

Jinymi slovy, tohle by to melo napravit:
... WHERE (freunde.user_id_freund = '$user_id_session' OR freunde.user_id = '$user_id_session') AND ...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: