Query doet het niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Don Pironet

Don Pironet

27/05/2011 09:37:54
Quote Anchor link
Beste,

Ik heb een query gemaakt namelijk deze:

$sql1 = "SELECT ontvanger from $friends WHERE (zender='".($_GET['user'])."' and relatie =2)" AND "SELECT zender from $friends WHERE (ontvanger='".($_GET['user'])."' and relatie =2)";

die zou de vrienden van iemand moeten kunnen tonen. Wat hij doet is als ik op mijn pagina kom dan geeft hij de vrienden weer, ga ik naar iemand anders zijn pagina doet hij het niet meer. Volgens mij is de query fout kan dat?

De database is zender, ontvanger, relatie en als relatie 2 is zijn het vrienden, vandaar dat de query in twee richtingen moet zoeken en dat is namelijk het probleem de tweede doet hij nooit.

Mvg,
Gewijzigd op 27/05/2011 09:41:46 door Don Pironet
 
PHP hulp

PHP hulp

24/12/2024 19:35:37
 
- Ariën  -
Beheerder

- Ariën -

27/05/2011 09:48:01
Quote Anchor link
Misschien eens handig om $sql1 eens te echoén...

Tevens is de naam van die variabele niet echt duidelijk.
 
John D

John D

27/05/2011 10:34:51
Quote Anchor link
tabelnamen bij voorkeur niet in variabelen ($friends) is vaak erg verwarrend en meestal onnodig.
 
Don Pironet

Don Pironet

27/05/2011 11:33:49
Quote Anchor link
Het probleem zit hem zo het tweede deel na de AND wordt nooit uitgevoerd.
 
Maikel  B

Maikel B

27/05/2011 11:37:44
Quote Anchor link
is dit al niet voldoende?

SELECT
ontvanger,
zender
FROM
$friends
WHERE
zender = '".$_GET['user']."'
AND
relatie = 2
Gewijzigd op 27/05/2011 11:39:09 door Maikel B
 
Tobias Tobias

Tobias Tobias

27/05/2011 12:39:55
Quote Anchor link
Zoals ik de query lees is dit een combinatie van 2 query's.
Hierbij gebruik je UNION ipv AND

AND gebruik je als een record aan meerdere voorwaarden moet voldoen
 
Don Pironet

Don Pironet

27/05/2011 12:56:08
Quote Anchor link
Maikel B, zoekt jou query in twee richtingen dan? Want ik slaag de vriendschappen maar in 1 richting op.

Dus als ik eerst aanvraag sta ik als zender en iemand anders als ontvanger. Dus als je op dat profiel komt moet hij ook zien dat hij met mij bevriend is en dan is hij dus wel ontvanger dan werkt jou query toch niet?

Tobias, zou ik daar een union voor nodig hebben dan?
 
Tobias Tobias

Tobias Tobias

27/05/2011 13:43:59
Quote Anchor link
Dit zou hem moeten zijn

"SELECT
ontvanger AS o
FROM
$friends
WHERE
zender='".$_GET['user']."' AND relatie =2
UNION
SELECT
zender AS o
FROM
$friends
WHERE
ontvanger='".$_GET['user']."' AND relatie =2"

Ik weet niet zeker of de 'AS o' nodig is, misschien dat iemand anders daar meer van weet?
EDIT: Hmmm, de tabs doen het niet...
Gewijzigd op 27/05/2011 13:46:03 door Tobias Tobias
 
Don Pironet

Don Pironet

27/05/2011 13:50:21
Quote Anchor link
Dankje ik had hem net ook :
$sql1 = "SELECT ontvanger from $friends WHERE zender='".($_GET['user'])."' and relatie =2 UNION SELECT zender from $friends WHERE ontvanger='".($_GET['user'])."' and relatie =2";

Dankje voor je hulp.
 
- SanThe -

- SanThe -

27/05/2011 13:55:47
Quote Anchor link
Dit: $_GET['user'] zet je natuurlijk niet zo onbeveiligd in de query neem ik aan.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.