webForumDet fria alternativet

query och filter problem

3 svar · 261 visningar · startad av WiZzLeR

WiZzLeRMedlem sedan juni 2002346 inlägg
#1

första frågan:

jag har;

$query = "SELECT * FROM ace_news, ace_users WHERE news_author_id = user_id ORDER by news_time DESC";
if ($result = $mysqli->query($query)) { 
  while ($row = $result->fetch_assoc()) {

...

och problemet är att jag har två inlägg i ace_news men alla visas inte när news_author_id är inte likadan som första nyheten.

Hur kan man göra så att man kan loopa nyheterna och ersätta news_author_id med nicket som finns i ace_users?

andra frågan:

hur kan jag filtrera en loop så att t.ex id 1 och upp visas. dvs allt under 1 visas inte i loopen.

PeeerMedlem sedan mars 20025 907 inlägg
#2

Och du är säker på att det finns en post i ace_users som har ett user_id som motsvarar det id som finns i news_author_id i posten som inte visas?

$query = "SELECT * FROM ace_news left outer join ace_users 
on news_author_id = user_id
ORDER by news_time DESC";

if ($result = $mysqli->query($query)) { 
  while ($row = $result->fetch_assoc()) {

Vet inte om det fungerar med asterixen där, möjligen får du byta ut den mot alla kolumnnamn (separerade med kommatecken)

WiZzLeRMedlem sedan juni 2002346 inlägg
#3

aa det fungerade. Om man vill peta in en till t.ex ace_sections där news_type = section_id ?

/r dum jag är; SELECT * FROM ace_news left outer join ace_users on news_author_id = user_id join ace_sections on news_type = section_id ORDER by news_time DESC . enkelt ju. Sen när det gäller att filtrera. det är ju bara att adda where blabla > 1 eller where mblabla in (1,4,5,6,8); ELLER between 1 and 4. Finns ju massa lösningar.

Moderator: Du kan nog flytta tråden till mysql så tråden ligger där den igentligen ska.

NiklassonMedlem sedan nov. 2000857 inlägg
#4

Tråden flyttas från PHP..

131 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)