Nu echt hulp nodig
Gebruik gewoon de namen zoals ze al heten:
$row['ID'], $row['Services'] etc.
Dus dat hernoemen is echt overbodig!
Verder werkte mijn query goed op de dump van Jan Koehoorn. Dus wat er bij jouw misgaat? Ik zie die query niet in je code?
Maar ik moet unique waardes eruit filteren. De out put met die code die ik heb, zoals in mijn post beschreven, doet eerst kijken bij de gebruiker op de eerste record en daarna op de volgende record van die gebruiker, waardoor ik dus een output krijg die ik niet wil.
De output moet niet dubbel uitzien.
OUTPUT NU (en nog steeds)
User_A - 1 - Emmer <= NOT Selected
User_A - 1 - Emmer <= NOT Selected
User_A - 2 - Schep <= Selected
User_A - 2 - Schep <= NOT Selected
User_A - 3 - Drank <= NOT Selected
User_A - 3 - Drank <= Selected
User_A - 4 - Eten <= NOT Selected
User_A - 4 - Eten <= NOT Selected
Moet eigenlijk worden:
User_A - 1 - Emmer <= NOT Selected
User_A - 2 - Schep <= Selected
User_A - 3 - Drank <= Selected
User_A - 4 - Eten <= NOT Selected
Dus hoe ik bepaalde waardes noem, maakt even niet uit, gaat nu puur om de uitvoering en de werking ervan.
En dat ik ze hernoem, is puur dat ik niet de hele waarde in hoeft te vullen zoals $row['selectie'] etc...
Daarom de hernoeming.
Maar ik ik heb eigenlijk nog geen idee waar je allemaal mee bezig bent. Eigenlijk zou je je 'tafelblad' even schoon moeten vegen, en de structuur van Jan Koehoorn inladen, en daarop verder werken in een losse testomgeving.
Toevoeging op 22/04/2023 10:06:39:
Quote:
Dus hoe ik bepaalde waardes noem, maakt even niet uit, gaat nu puur om de uitvoering en de werking ervan.
En dat ik ze hernoem, is puur dat ik niet de hele waarde in hoeft te vullen zoals $row['selectie'] etc...
Daarom de hernoeming.
En dat ik ze hernoem, is puur dat ik niet de hele waarde in hoeft te vullen zoals $row['selectie'] etc...
Daarom de hernoeming.
Als je je code met opzet onoverzichtelijk maakt, dan trek ik mij terug uit dit topic. Jij bent immers degene die geholpen wilt worden, dus maak het voor andere ook niet moeilijk. Laat de variabele gewoon wat het is! Hernoemen is nergens voor nodig
Gewijzigd op 22/04/2023 10:08:31 door - Ariën -
Heel simpel, ik heb de code zelfs nu even versimpeld, getest en wel, werkt het zelfde als de code in de vorige post.
De waardes staan niet dubbel in de database, hij haat eerst de record op van VB : gebruiker 3, dan kijkt hij bij het ID waar de gebruiker bij staat (database tabel UserServices : ID, User_ID, Services_ID) zeg dat de gebruiker dus bij ID : 1 en bij Services_ID : 2 heeft staan en bij ID : 2 Services_ID : 3 heeft staan, dan gaat hij eerst de records ophalen bij ID 1 en spuugt die uit en daarna pas bij ID 2. Daardoor dat ik dus dubbele OUTPUT krijg.
Maar om je een beetje tegemoet te komen, post ik even de simpele code die ik in stukjes gehakt heb en dezelfde werking vertoont.
Code (php)
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
37
38
39
40
41
42
43
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
37
38
39
40
41
42
43
<?php
// The user database with all their info //
$sql1 = 'SELECT * FROM Girls WHERE ID = '.$_SESSION['ID'].'';
$result1 = mysqli_query($connect, $sql1);
$data1 = mysqli_fetch_all($result1, MYSQLI_ASSOC);
// Database where the user can select their services //
$sql2 = 'SELECT * FROM Services';
$result2 = mysqli_query($connect, $sql2);
$data2 = mysqli_fetch_all($result2, MYSQLI_ASSOC);
// Database where users has their selected services standing //
$sql3 = 'SELECT * FROM UserServices WHERE User_ID = '.$_SESSION['ID'].'';
$result3 = mysqli_query($connect, $sql3);
$data3 = mysqli_fetch_all($result3, MYSQLI_ASSOC);
foreach($data1 as $row1) {
$konijn = $row1['ID'];
$schaap = $row1['Nickname'];
foreach($data2 as $row2) {
$varken = $row2['ID'];
$gans = $row2['Services'];
foreach($data3 as $row3) {
$koe = $row3['ID'];
$kip = $row3['Services_ID'];
$kuiken = $row3['User_ID'];
if($kuiken == $konijn) {
if($kip == $varken) {
echo $schaap." - ".$gans." - ".$kip." <= Okay <br />";
} else {
echo $schaap." - ".$gans." - ".$kip." <= NOT Okay <br />";
}
}
}
}
}
?>
// The user database with all their info //
$sql1 = 'SELECT * FROM Girls WHERE ID = '.$_SESSION['ID'].'';
$result1 = mysqli_query($connect, $sql1);
$data1 = mysqli_fetch_all($result1, MYSQLI_ASSOC);
// Database where the user can select their services //
$sql2 = 'SELECT * FROM Services';
$result2 = mysqli_query($connect, $sql2);
$data2 = mysqli_fetch_all($result2, MYSQLI_ASSOC);
// Database where users has their selected services standing //
$sql3 = 'SELECT * FROM UserServices WHERE User_ID = '.$_SESSION['ID'].'';
$result3 = mysqli_query($connect, $sql3);
$data3 = mysqli_fetch_all($result3, MYSQLI_ASSOC);
foreach($data1 as $row1) {
$konijn = $row1['ID'];
$schaap = $row1['Nickname'];
foreach($data2 as $row2) {
$varken = $row2['ID'];
$gans = $row2['Services'];
foreach($data3 as $row3) {
$koe = $row3['ID'];
$kip = $row3['Services_ID'];
$kuiken = $row3['User_ID'];
if($kuiken == $konijn) {
if($kip == $varken) {
echo $schaap." - ".$gans." - ".$kip." <= Okay <br />";
} else {
echo $schaap." - ".$gans." - ".$kip." <= NOT Okay <br />";
}
}
}
}
}
?>
Gewijzigd op 22/04/2023 10:16:00 door Arno van Zanten
Wederom doe je niks met de tips. Je vaart je eigen koers. Om deze twee redenen gaat ook dit topic op slot.
Tip: Laat het rusten, vier weekend, pak het later op, en begin opnieuw met lezen, pak php.net en de site van mysql erbij en probeer te begrijpen wat alles doet.
Gewijzigd op 22/04/2023 10:36:19 door - Ariën -