E' natale lo so... ma ho un problema su una query :S

danielloantonio

Utente Attivo
20 Lug 2012
110
0
0
Salve,

prima di tutto auguri a tutti e scusate il momento meno opportuno per postare :) ma ho un problema con una query che ho trovato in un vecchio progetto a cui stavo lavorando...

Tabella posts
id, user, message.....
Tabella friendship
id, x, y (x chi invia la richiesta, y chi la riceve)
Eccola: "SELECT * FROM posts LEFT JOIN friendship ON posts.user=friendship.y WHERE (friendship.x='$id' OR posts.user = '$id') ORDER BY -time LIMIT 50" (dove $id è l'id dell'user loggato al momento)

Dovrebbe, perche non va, selezionare solo i post dei miei amici (dichiarati nella tabella friendship) da tutti uelli presenti nel database e, ovviamente, anche i post che ho condiviso io! Ma le righe restituite sono 0...

Come posso risolvere???

Inolte pensavo, e scusate l'ignoranza ma non riusciro mai a capire il JOIN...., se ho capito bene questa query restituisce i post solo quando l'utente che ha condivisio quel post è la Y della tabella friendship... ma a me interessa prendere tutti quelli degli amici indifferentemente se x sono io e y e lui o se x e lui e y sono io! Erro?

Grazie mille a tutti e scusate ancora il disturbo! :p
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
PHP:
$strquery="SELECT * FROM stato INNER JOIN utenti ON idemail=email WHERE '$myemail'=stato.idemail OR stato.idemail IN (SELECT email2 FROM friendship, utenti WHERE email1 = '$myemail' AND email2 = email) OR stato.idemail IN (SELECT email1 FROM friendship, utenti WHERE email2 = '$myemail' AND email1 = email) ORDER BY time DESC";

Questo lo avevo già pronto e funzionante..cambia solo email1 e email2 con x e y e prendo anche i dati di tutti gli utenti che hanno pubblicato qualcosa.. Ovviamente ci deve essere una tabella utenti.
Potresti facilmente adattarlo.
 

danielloantonio

Utente Attivo
20 Lug 2012
110
0
0
Ma non è troppo elaborata? Ripeto non so niente di JOIN...

LA QUERY QUINDI DOVREBBE ESSERE :
$strquery="SELECT * FROM posts INNER JOIN friendship ON x='$id' WHERE '$id'=posts.user OR posts.user IN (SELECT y FROM friendship, users WHERE x = '$id' AND y = ??????????????) OR posts.user IN (SELECT x FROM friendship, users WHERE y = '$id' AND x = ???????) ORDER BY time DESC";
???

Non ci capisco niente :S

Potresti chiarirmi nei vari passaggi cosa fa?
Grazie mille cmq per avermi risposto :)
 

danielloantonio

Utente Attivo
20 Lug 2012
110
0
0
Ok diciamo che guardando bene .a query ho "risolto"...

Eccola:
$postsquery = mysql_query("SELECT * FROM posts LEFT JOIN friendship ON posts.user=friendship.y WHERE (friendship.x='$id OR posts.user = '$id')");

Ed effettivamente prende solo i post di cui sono amico!
Questo pero solo se sono stato io an inviare la richiesta di amicizia cioè nella tabella friendship io sono x e il mio amico è y! Se inverto i due valori stampa solo i miei post!
C'è un modo per risolvere o quando inserisco l'amicizia nel db devo per forza mettere due valori cioè x=io y=l'altro e x=l'altro y=io????

Inoltre se inserisco ORDER BY -time LIMIT 50 non funziona più
Sarà che devo mettere ORDER BY posts.time DESC LIMIT 50 ????

Grazxie a tutti
 

danielloantonio

Utente Attivo
20 Lug 2012
110
0
0
Anche se in effetti potrebbe andare bene xk io non voglio fare una vera e propria amicizia ma piu un "followind" come twitter... quindi chi segue (la x) puo vedere i post della y cioè di chi sta seguendo ma la y non puo vedere quelli dlla x ! così se la y vuole vedere i post della x deve seguirla e quindi si inserisce nel dd un'altra riga!
Giustoo?!?! Ahah
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
Allora si in questo caso è esatta in quanto devi selezionare solo i post di quelli che segui.
 
Discussioni simili
Autore Titolo Forum Risposte Data
P problema con il countdown per la fine dell'anno e per natale Javascript 13
A Problema urgente da risolvere prima di Natale Flash 1
Max 1 Importante BUON NATALE Altri Annunci 1
Max 1 Buon Natale Discussioni Varie 4
G [VENDO] Realizzazione Siti Web *Sconti Natale* Offerte e Richieste di Lavoro e/o Collaborazione 0
U Buon Natale e Buon Anno a Tutti Presentati al Forum 1
easypopularity **PROMO NATALE** Fans, like, seguaci lowcost Annunci servizi di Social Media Marketing 0
G [VENDO] Articoli con tema "Natale" (idee regalo, decorazioni, riciclare i regali ecc) Offerte e Richieste di Lavoro e/o Collaborazione 0
ypsilon86 Buon Natale a tutti Presentati al Forum 3
O Concorso di Natale OfferBox Per Natale chiedi quello che vuoi! OfferBox te lo regala! Altri Annunci 0
N PLAYSTATION 3 a natale????? Presenta il tuo Sito 2
S Regalo di Natale - Libro "Cane Sciolto" Presenta il tuo Sito 0
maxbossi Buon Natale a tutti! Discussioni Varie 5
A Pacco Di Natale! Discussioni Varie 2
peppoweb ALERT: Cartolina di Natale? Un virus Sicurezza e Virus 0
I Buon Natale Discussioni Varie 1
I Sto progettando nuovi siti utilizzando bootstrap e devo dire funziona bene, l'unico problema e la maschera -moz- HTML e CSS 0
K Problema form update PHP 2
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
S Problema nel ciclare un json Javascript 0
G Problema con Xampp Web Server 1
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
K Problema Inner join PHP 1
F firefox problema http Linux e Software 0
N Problema con position absolute e overflow HTML e CSS 4
E Problema jquery Success jQuery 2
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
E problema selezione sfumata Photoshop 2
K [PHP] Problema con variabili concatenate. PHP 1
A Problema filtro fluidifica Photoshop Photoshop 1
H Problema Bordi Scontorno Photoshop 1
O problema con query PHP 4
R Problema installazione Realtek WiFi USB rtl8821 Reti LAN e Wireless 0
I problema con 2 account Posta Elettronica 1
L problema collegamento file css con html HTML e CSS 1
Y Problema percorso file in rete PHP 1
N Problema SEO "L'URL non si trova su Google" SEO e Posizionamento 4
E Problema accesso a file con app sviluppata con MIT APP INVENTOR 2 Sviluppo app per Android 0
P Problema acquisizione clienti Webdesign e Grafica 1
F NetBeans problema creazione progetto Java Windows e Software 0
M Problema con Try Catch PHP 0
C problema seo + cerco esperto SEO e Posizionamento 11
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T PROBLEMA CON SESSIONI PHP 3
A Problema, non so, di scale() o transform, oppure altro? HTML e CSS 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
R problema con else PHP 0
T PROBLEMA CON ARRAY PHP 8

Discussioni simili