mysql while vraag

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Fullstack Software Developer

Bedrijfsomschrijving Functieomschrijving Java ontwerpen, bouwen en testen (T-shaped). Als senior ontwikkelaar ben je bekend in zowel de back-end als de frontend van een applicatie. Angular, Continious Delivery / Integration. Een ervaren iemand die de leiding kan nemen, een weg vindt in nieuwe situaties, en in oude applicaties. Initiatiefrijk, bekend met de (technische) omgevingen die we bij duo gebruiken, niet te beroerd om collega’s te helpen. Als senior programmeur in staat om op te treden als lead programmeur. Ondersteunt de testers bij de testautomatisering en minder ervaren programmeurs bij dagelijks werkzaamheden. Dit laatste met name op het gebied van Angular. Achtergrond

Bekijk vacature »

.NET Software Developer

Dit ga je doen Als .NET Software Developer zul jij je voornamelijk bezig houden met: Het van scratch af aan bouwen van applicaties (.NET, C#, Bootstrap, KnockoutJs en WebAPI2); Het testen van jouw code d.m.v. het uitvoeren van unittesten; Het oplossen van bugs in de code; Het onderhouden van contact met collega's betreffende de door jouw ontwikkelde applicaties; Het verbeteren en doorontwikkelen van maatwerkapplicaties. Hier ga je werken Jij gaat aan de slag als .NET Software Developer en gaat je focussen op het bedenken, ontwikkelen en testen van maatwerkapplicaties in voornamelijk C#. Dit ga je doen bij een grote, internationale

Bekijk vacature »

Front-end Developer

Onze klant is sinds 2 jaar actief als adviseur en bemiddelaar in de verzekeringsmarkt. Sindsdien proberen zij deze slapende markt flink wakker te schudden. Dit willen zij doen door het bouwen van slimme vergelijkers op hun eigen website en die van partners. Het bedrijf wil continu voorop lopen, zodat consumenten eenvoudig de verzekeringen kunnen vinden die het beste bij ze past. Functieomschrijving Als Front-end Developer werk je aan vergelijkingsmodules die consumenten dagelijks gebruiken bij het vergelijken en afsluiten van verzekeringen. Je vindt het leuk om samen te werken met de product owner, bestaande modules te verbeteren en nieuwe vergelijkers "from

Bekijk vacature »

Senior Node.js developer Digital Agency

Functie Door de groei van de organisatie zijn ze op zoek naar een Tech Lead. Als tech lead ben jij verantwoordelijk Als Back end Node.js developer kom je terecht in een van de 8 multidisciplinaire teams in het projectenhuis. Afhankelijk van jouw interesses, wensen en capaciteiten word je bij projecten en onderwerpen naar keuze betrokken. Als ervaren ontwikkelaar zul jij vaak leiding nemen in de projecten en in het team een aanvoerder zijn van technische discussies. Uiteindelijk wil jij natuurlijk de klantwensen zo goed mogelijk vertalen naar robuuste code. De projecten kunnen varieren van langlopende- tot kleinschalige trajecten. Voorheen werkte

Bekijk vacature »

Belastingdienst - Freelance Applicatieontwikkelaar

Startdatum: 01.06.2023 Richttarief: €65,00 - €75,00 Duur van de opdracht: 6 maanden Uren per week: 36 Taal: Nederlands vereist! Gelieve in het Nederlands te solliciteren. Hybride. Kantoordagen in Utrecht, incidenteel in Apeldoorn Functieomschrijving: De afdeling IV – Generieke Voorzieningen – Interactie Online is onderdeel van de keten Interactie. De missie van de keten is: “het faciliteren van de interactie met alle burgers, bedrijven en hun vertegenwoordigers om hen in staat te stellen aan hun fiscale verplichtingen te voldoen en aanspraak te maken op hun rechten.” De afdeling Interactie Online heeft een belangrijke bijdrage binnen deze keten. Dit door het ontwikkelen

Bekijk vacature »

Medior/senior front end developer React Sportsoftw

Functie Voor deze functie ben ik op zoek naar een enthousiaste front end developer die communicatief vaardig is. Jij wordt onderdeel van een enthousiast jong team dat werkt aan grote websites. Binnen jouw rol ben jij diegene die de vertaling maakt van design naar functionele code en zorg jij voor goede experience op meerdere platformen. Dit doe je natuurlijk door gebruik te maken van onze stack; Javascript, HTML, CSS en React. Daarnaast wordt er gebruik gemaakt van Webcomponents en verschillende authenticatie tools. Doordat er hier gestreefd wordt naar de beste gebruikerservaringen, wordt het product constant doorontwikkeld. Hierdoor blijven ze voor

Bekijk vacature »

Klein team zoekt grote fullstack .NET developer to

Bedrijfsomschrijving Deze werkgever is marktleider in de Benelux en is Europees ook al aardig aan de weg aan het timmeren. Ze voorzien technische winkels van apparatuur om producten een langer leven te geven. Hiermee reduceren ze flink wat CO2 uitstoot en dat is natuurlijk goed voor iedereen! IT speelt een belangrijke rol in de bedrijfsvoering en de applicaties zijn van goed niveau. Als fullstack .NET developer ga jij je bijdrage leveren aan het verder verbeteren van de applicaties en de interne processen. Ze zijn nu met ruim 50 medewerkers in totaal en de afdeling development bestaat uit een 5tal developers.

Bekijk vacature »

Medior/senior Back-end developer gezocht!

Functie Vanwege de groei binnen het bedrijf zijn we op zoek naar versterking in het devlopmenttean. Als back-end developer bouw je aan de bedrijfssoftware die ons helpt bij de primaire processen. Een leuk (intern) project dus waarbij je de software continu doorontwikkeld! Je werkt in een klein team, we hebben dagelijks stand-ups en iedere twee weken een scrum-sessie, begeleid door onze Scrum Master. Hierin krijg je uitgebreid de kans om je ideeën te presenteren, en te overleggen met je mede-ontwikkelaars en de Product Owner. Binnen de ontwikkelteams gebruiken we Trello, Gitlab, Jiira, Confluence en Boockstack. Hiernaast werken ze met de

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Full Stack .NET Developer C# ASP.NET

Samengevat: Deze werkgever is gespecialiseerd in het op afstand bewaken en besturen van machines en processen. Ben jij een ervaren Full Stack .NET Developer? Heb je ervaring met C# en ASP.NET? Vaste baan: .Net Developer C# ASP.NET HBO €3.300 - €4.500 Deze werkgever is een snel groeiende onderneming gespecialiseerd in het op afstand bewaken en besturen van machines en processen, IoT (Internet of Things). Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Wil jij bij de top specialisten horen? Ben jij op zoek naar een

Bekijk vacature »

C# .NET Developer

Dit ga je doen Als developer nieuwe gave features implementeren; Werken met technieken als C# .NET en (REST) API's webservices; Ontwikkelen van koppelingen middels API's; Maken van technische keuzes en beslissingen over de architectuur; Junior collega's coachen; Initiatief nemen voor nieuwe technische mogelijkheden; Je bent een belangrijke schakel - en vindt het leuk - om te schakelen met de business. Hier ga je werken In een klein team van professionals ben je als C# .NET Developer verantwoordelijk voor het ontwikkelen van één van de applicaties voor het grootste inhouse product: een applicatie voor alles omtrent hypotheken. De programmeertaal die je

Bekijk vacature »

Mendix Ontwikkelaar - Vernieuwen van het applicati

Bedrijfsomschrijving De ontwikkelingen in de transportsector gaan razendsnel. Bij ons kun je een belangrijke rol spelen in deze sector. We streven ernaar om onze klanten te ontzorgen op het gebied van continuïteit en veiligheid met innovatieve producten en diensten. We willen dat onze klanten de veiligste vervoerders van Europa worden. Ons team werkt hard om deze ambitieuze doelstellingen te bereiken en we bieden een motiverende werkomgeving aan. We zijn op zoek naar zelfstarters met een focus op resultaat en beslissingsbevoegdheid. Functieomschrijving Als Mendix ontwikkelaar bij deze organisatie heb je een gevarieerde baan. Het applicatielandschap wordt vernieuwd en de “schade en

Bekijk vacature »

Junior .NET developer

Functie Ons programma is voor afgestudeerde enthousiastelingen die het als een uitdaging zien om met een klein dynamisch team bij de grootste bedrijven van Nederland aan de slag te gaan. Tijdens jouw dienstverband word jij begeleid door een talent manager. Het ontwikkelen van jouw talent staat hierbij centraal. Het programma doorloop je met een team van circa 8 Mede- trainees. De eerste maand start je met een fulltime inhouse opleiding. Deze staat geheel in het teken van de werkzaamheden die jij verder in het programma zult uitvoeren. Na deze opleidingsmaand ga je aan de slag in een dynamische omgeving bij

Bekijk vacature »

Fullstack developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Back-end Developer (Permanent position with the em

Bedrijfsomschrijving Dutch specialist in technical installation materials. Functieomschrijving Purpose of the position: Our client is looking for a Back-end Developer who, together with the rest of the energetic and dynamic team, is responsible for the development and management of the website. This not only concerns the development and management of the current website, but also the development of a new Headless Commerce Platform to keep the customer's website Future proof. Within the IT department, there is a real DevOps culture and the commerce team is at the forefront and tries to implement continuous improvements. Most important tasks: ï‚· Designing and

Bekijk vacature »

Pagina: « vorige 1 2

Ger van Steenderen
Tutorial mod

Ger van Steenderen

15/03/2015 12:00:08
Quote Anchor link
Thomas van den Heuvel op 14/03/2015 19:39:01:
Door de manier waarom de vriendelijst-tabel in elkaar zit leent een oplossing met 1 query zich hier niet direct voor. Ook zou je je niet in allerlei moeilijke/onmogelijk bochten moeten wringen om het met 1 query op te lossen. Daarnaast heb je een ("jouw") vriendenlijst wellicht vaker nodig dus valt er best iets te zeggen om dat elke page-access opnieuw te berekenen en in een user-object op te slaan ofzo.

Tevens is er niets mis met de "verdeel en heers" strategie: deel je probleem op in deelproblemen die je afzonderlijk oplost. Ik snap de aversie voor meerdere queries niet.

Begin dus gewoon eerst eens met het opstellen van een array in PHP, waarin de gebruiker-id's van jouw vrienden zitten.

Deze bouwsteen kun je vervolgens toepassen in andere onderdelen, bijvoorbeeld queries.

Ik zie niet in waarom je dat eerst door PHP gaat halen terwijl je het resultaat van de eerste query direct ín een andere query kan gebruiken.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SELECT
    u.gebruikersnaam,
    b.datum,
    b.bericht
FROM
    (SELECT
        CASE user_1
        WHEN 1234 THEN user_2 ELSE user_1 END friend_id
    FROM
        vriendenlijst
    WHERE
        bevestigd = 1 AND (user_1 = 1234 OR user_2 = 1234)
    ) f
JOIN
    gebruikers u
    ON f.friend_id = u.user_id
JOIN
    berichten b
    ON f.friend_id = b.user_id
 
PHP hulp

PHP hulp

25/12/2024 14:37:01
 
Ivo P

Ivo P

15/03/2015 12:09:13
Quote Anchor link
let trouwens op het gebruik van de haakjes in regel 12.

die missen in een query waarvan je eerder aangaf dat die niet helemaal goed werkte.


waarom haakjes?

2*2+3 = 4+3 =7
terwijl
2*(2+3) = 2 * 5 = 10

Zo werken de regels met AND en OR ook
 
Eeyk Vd noot

Eeyk Vd noot

15/03/2015 12:52:32
Quote Anchor link
Alleen nu weergeeft hij op de ene account wel alles en op de andere account weergeeft hij berichten van mensen met wie je niet bevriend bent.


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
vrienden_bericht = mysqli_query($dbcreat,
"SELECT * FROM `vriendenlijst` WHERE (`naam_1`='".mysqli_real_escape_string($dbcreat,$data->login)."' or `naam_2`='".mysqli_real_escape_string($dbcreat,$data->login)."') AND `bevestigd`='1'") or die(mysqli_error($dbcreat));
            
while($ovj     = mysqli_fetch_object($vrienden_bericht)){
$berichten = mysqli_query($dbcreat,"
SELECT B.*
FROM berichten_muur AS B
INNER JOIN (SELECT IB.id
  FROM berichten_muur AS IB
  WHERE IB.gebruiker_id = '"
.mysqli_real_escape_string($dbcreat,$ovj->id_1)."' or IB.gebruiker_id = '".mysqli_real_escape_string($dbcreat,$ovj->id_2)."'
  
  UNI ON
  
  SELECT IB.id
  FROM berichten_muur AS IB
  INNER JOIN vriendenlijst AS V
  ON V.id_1 = IB.gebruiker_id
  WHERE V.id_1 = '"
.mysqli_real_escape_string($dbcreat,$ovj->id_1)."'

  UNI ON
  
  SELECT IB.id
  FROM berichten_muur AS IB
  INNER JOIN vriendenlijst AS V
  ON V.id_2 = IB.gebruiker_id
  WHERE V.id_2 = '"
.mysqli_real_escape_string($dbcreat,$ovj->id_2)."'
) AS IDS

ON IDS.id = B.id
ORDER BY B.datum DESC"
) or die(mysqli_error($dbcreat));

}

?>


ik heb nu ook dit geprobeerd :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
while($ovj     = mysqli_fetch_object($vrienden_bericht)){
$berichten = mysqli_query($dbcreat,"
SELECT B.*
FROM berichten_muur AS B
CROSS JOIN (SELECT IB.id
  FROM berichten_muur AS IB
  
  UNI ON
  
  SELECT IB.id
  FROM berichten_muur AS IB
  INNER JOIN vriendenlijst AS V
  ON V.id_1 = IB.gebruiker_id
  WHERE V.id_1 = '"
.mysqli_real_escape_string($dbcreat,$ovj->id_1)."'

  UNI ON
  
  SELECT IB.id
  FROM berichten_muur AS IB
  INNER JOIN vriendenlijst AS V
  ON V.id_2 = IB.gebruiker_id
  WHERE V.id_2 = '"
.mysqli_real_escape_string($dbcreat,$ovj->id_2)."'
) AS IDS
ON IDS.id = B.id
 WHERE B.gebruiker_id ='"
.mysqli_real_escape_string($dbcreat,$ovj->id_1)."' or B.gebruiker_id ='".mysqli_real_escape_string($dbcreat,$ovj->id_2)."'

ORDER BY B.datum DESC"
) or die(mysqli_error($dbcreat));
}

?>


heel vreemd alles werkt maar zodra je 4 vrienden hebt gaan alle berichten van vriend 1 weg.
Gewijzigd op 15/03/2015 14:44:01 door Eeyk Vd noot
 
Thomas van den Heuvel

Thomas van den Heuvel

15/03/2015 15:09:52
Quote Anchor link
Ger van Steenderen op 15/03/2015 12:00:08:
Ik zie niet in waarom je dat eerst door PHP gaat halen terwijl je het resultaat van de eerste query direct ín een andere query kan gebruiken.


Omdat dit mogelijk niet de enige plaats is waar je je vriendenlijst gebruikt. Als je deze gegevens vaker nodig hebt dan is het omslagpunt vrij snel bereikt niet? Tenzij je elke keer zo'n super specifieke query wilt opbouwen die hetzelfde doet.

En wat als de bepaling van wie een "vriend" is verandert? Dan mag je in jouw geval een heleboel queries gaan aanpassen. Dit is dus ook een beetje risicospreiding.

Daarnaast, zoals ik al aangaf, wellicht wil je de vrienden van iemand als eigenschap / methode in een user object onderbrengen. De vriendenlijst moet dan ook "in afzondering" beschikbaar zijn, en niet als onderdeel van een andere query.

Het is fijn dat je dit specifieke probleem in 1 query kunt oplossen, maar daarbij is het niet de bedoeling dat je "the big picture" uit het oog verliest. Daarbij is 1 query meer of minder echt vele malen onbelangrijker.

Echt, laat dit "het MOET in 1 query" mantra eens los.

EDIT: En al deze mooie oplossingen ten spijt lijkt de topicstarter het nog steeds niet opgelost te hebben. Als hij gewoon mijn oplossing had gevolgd (dus gewoon aan de molen draaien, domweg 2 queries uitvoeren) dan was 'ie allang klaar geweest.
Gewijzigd op 15/03/2015 15:13:24 door Thomas van den Heuvel
 
Eeyk Vd noot

Eeyk Vd noot

15/03/2015 15:27:18
Quote Anchor link
@thomas : ik heb jou oplossing geprobeerd maar ik krijg het zelfde resultaat.

Ik begrijp alleen niet waarom.

het bij vriend 1 en 2 het wel doet en dan kom je bij vriend 4 en 3 en dan ziet die geen berichten meer.
ik heb het op deze manier in me database.


Afbeelding


het klopt dat vrid niet uniek is, dat is de code om een relatie of een vriend te blokkeren.
dat moet ik even fixen.
Gewijzigd op 15/03/2015 15:30:53 door Eeyk Vd noot
 
Thomas van den Heuvel

Thomas van den Heuvel

15/03/2015 15:37:03
Quote Anchor link
Ik snap echt niet dat dit zoveel problemen oplevert.

Ik zal opnieuw een poging doen om mijn strategie toe te lichten.

Stel we gaan uit van persoon X. Jij bent ingelogd als persoon X (bijvoorbeeld id 7).

Je bezoekt de berichtenmuur en je wilt je eigen berichten zien en de berichten van je vrienden.

Hiertoe bepaal je eerst wie je vrienden zijn. Hiertoe heb ik je een stuk code gegeven. Uitgaande van user X (id 7) zou dit volgens bovenstaande screenshot de volgende lijst van vrienden moeten opleveren: (6, 8, 9).

Deze informatie gebruik je vervolgens om de juiste berichten op te halen.

Die van jou (WHERE user_id = 7) of die van je vrienden (OR user_id IN (6, 8, 9)).

Wtf is precies het probleem?
 
Eeyk Vd noot

Eeyk Vd noot

15/03/2015 15:52:30
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$mijnVrienden
= array($ovj->id_1, $ovj->id_2);

$berichten = mysqli_query(
    $dbcreat,"
    'SELECT id_1, id_2  FROM vriendenlijst
    WHERE (id_1 = '"
.$mijnvrienden[0]."' OR id_2 = '".$mijnvrienden[1]."')
    AND bevestigd = '1'"
);
?>


dit werkt niet. ik krijg het zelfde resultaat als de andere oplossingen.
ik begrijp er ook niks meer van.
Gewijzigd op 15/03/2015 15:55:50 door Eeyk Vd noot
 
Ward van der Put
Moderator

Ward van der Put

15/03/2015 15:55:09
Quote Anchor link
Wat is het verschil tussen id_2 en user_id_2?

Alleen rust kan u redden ;)
 
Eeyk Vd noot

Eeyk Vd noot

15/03/2015 16:00:43
Quote Anchor link
Nou ik heb nu alle oplossingen meerdere malen geprobeerd.
en aangepaste versies het dichtste bij kwam


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php

[code]<?php
while($ovj     = mysqli_fetch_object($vrienden_bericht)){
$berichten = mysqli_query($dbcreat,"
SELECT B.*
FROM berichten_muur AS B
CROSS JOIN (SELECT IB.id
  FROM berichten_muur AS IB
  
  UNI ON
  
  SELECT IB.id
  FROM berichten_muur AS IB
  INNER JOIN vriendenlijst AS V
  ON V.id_1 = IB.gebruiker_id
  WHERE V.id_1 = '"
.mysqli_real_escape_string($dbcreat,$ovj->id_1)."'

  UNI ON
  
  SELECT IB.id
  FROM berichten_muur AS IB
  INNER JOIN vriendenlijst AS V
  ON V.id_2 = IB.gebruiker_id
  WHERE V.id_2 = '"
.mysqli_real_escape_string($dbcreat,$ovj->id_2)."'
) AS IDS
ON IDS.id = B.id
 WHERE B.gebruiker_id ='"
.mysqli_real_escape_string($dbcreat,$ovj->id_1)."' or B.gebruiker_id ='".mysqli_real_escape_string($dbcreat,$ovj->id_2)."'

ORDER BY B.datum DESC"
) or die(mysqli_error($dbcreat));
}

?>


Alleen het probleem is dat daar alleen alle id_1 gebruikers de berichten krijgen te zien.
 
Thomas van den Heuvel

Thomas van den Heuvel

15/03/2015 16:02:17
Quote Anchor link
Ik geef het op.

Ik kan je alleen maar aanraden om mijn vorige reactie nog eens fatsoenlijk door te lezen, en dat te combineren met mijn reactie hierboven.

Of lees al mijn reacties nog eens door, en probeer dategene te doorgronden wat je tot nu toe lijkt te ontgaan.
 
Eeyk Vd noot

Eeyk Vd noot

15/03/2015 16:20:36
Quote Anchor link
@Thomas van den heuvel.
die oplossing geeft het zelfde resultaat als de andere.


Patric is bevriend met Jolanda en eeyk.
Eeyk is bevriend met jolanda en patric.


patric zegt : Hoi allemaal
-- eeyk ziet dit, Jolanda ziet dit.
Eeyk zegt : Hallo patric.
-- Jolanda ziet dit patric ziet dit.
Jolanda zegt : Hey allemaal.
-- Eeyk ziet dit.


Hoe kan het dat patric dit niet ziet.
 
Thomas van den Heuvel

Thomas van den Heuvel

15/03/2015 16:38:08
Quote Anchor link
Heb je al geprobeerd wat te debuggen?

Blijkbaar gaat er iets mis in het selectie-proces van de vrienden van Jolanda (of patric, zo je wil).

De vraag stellen is hem haast beantwoorden.

Je geeft zelf een situatieschets van wat er misgaat, maar je lijkt je niet te realiseren wat dit inhoudt.

"patric wordt niet beschouwd als vriend van Jolanda, waar komt dit vandaan".

Volg het spoor.

EDIT: en hierbij helpt het dus ook als je een echte relationele database hebt, waarbij referenties tussen tabellen worden afgedwongen, in plaats van dat deze als los zand aan elkaar hangen (middels usernames).
Gewijzigd op 15/03/2015 16:42:58 door Thomas van den Heuvel
 
Dos Moonen

Dos Moonen

15/03/2015 18:17:12
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php

// niet loopen over vrienden, dat doet mysql voor je...

$berichten = mysqli_query($dbcreat,"
SELECT B.*
FROM berichten_muur AS B
INNER JOIN (SELECT IB.id
  FROM berichten_muur AS IB
  WHERE IB.gebruiker_id = '"
.mysqli_real_escape_string($dbcreat,$data->id)."'
  
  UNI ON
  
  SELECT IB.id
  FROM berichten_muur AS IB
  INNER JOIN vriendenlijst AS V
  ON V.id_1 = IB.gebruiker_id
  WHERE V.id_2 = '"
.mysqli_real_escape_string($dbcreat,$data->id)."'

  UNI ON
  
  SELECT IB.id
  FROM berichten_muur AS IB
  INNER JOIN vriendenlijst AS V
  ON V.id_2 = IB.gebruiker_id
  WHERE V.id_1 = '"
.mysqli_real_escape_string($dbcreat,$data->id)."'
) AS IDS

ON IDS.id = B.id
ORDER BY B.datum DESC"
) or die(mysqli_error($dbcreat));

while($loop_over_bovenstaande_query) {
  echo $bericht;
}


?>


Dit was meer wat ik bedoelde. Sorry dat ik V.gebruikersnaam in de WHERE clauses schreef terwijl het id_1 moest zijn bij de ON id_2 en vice versa.

Quote:
Echt, laat dit "het MOET in 1 query" mantra eens los.

NOPE! Dit is iets simpels dat de database hoort te doen.
 
Eeyk Vd noot

Eeyk Vd noot

15/03/2015 18:36:04
Quote Anchor link
Jaaa! het werkt! heel erg bedankt!
Gewijzigd op 15/03/2015 18:48:34 door Eeyk Vd noot
 

Pagina: « vorige 1 2



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.