ID`s ophalen en deze vergelijken met de ID`s uit ander database
Nu per gebruiker worden deze opgeslagen in een andere tabel, enkel met de Optie_ID.
Dus even een korte samen vating, ik ben weer met iets te moeilijks bezig.
Kan wel weer op YT gaan zoeken etc... maar daar zal ik weer hele oude codes tegen komen.
Volgens mij moet ik nu een functie gaan aanmaken, maar dat weet ik dus ook even niet.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$sql = 'SELECT * FROM UserOptions WHERE User_ID = '.$UserID.'';
$result = mysqli_query($connect, $sql);
$rows = mysqli_num_rows($result);
if($rows == 0) {
echo "<div class='view-grid'>".$rows." = No Options found by user!<br /></div>";
exit;
}else{
$optionid = mysqli_fetch_all($result, MYSQLI_ASSOC);
echo "<div class='view-grid'>Options that the user provide</div>";
$Uoptions = mysqli_fetch_all($result, MYSQLI_ASSOC);
foreach($Uoptions as $options) {
$services[] = $options['Options_ID'];
}
}
?>
$sql = 'SELECT * FROM UserOptions WHERE User_ID = '.$UserID.'';
$result = mysqli_query($connect, $sql);
$rows = mysqli_num_rows($result);
if($rows == 0) {
echo "<div class='view-grid'>".$rows." = No Options found by user!<br /></div>";
exit;
}else{
$optionid = mysqli_fetch_all($result, MYSQLI_ASSOC);
echo "<div class='view-grid'>Options that the user provide</div>";
$Uoptions = mysqli_fetch_all($result, MYSQLI_ASSOC);
foreach($Uoptions as $options) {
$services[] = $options['Options_ID'];
}
}
?>
Dit is wat ik nu heb, maar hij moet de ID`s vergelijken met de ID`s uit een andere tabel.
Ik denk dat ik met deze code verkeerd bezig ben en dit naar een functie moet omzetten.
Ik heb een tabel : Options waarin alle opties instaan waar de user uit kan kiezen, deze worden dan opgeslagen in UserOptions, maar dan enkel de Option_ID en User_ID, dus nu moet ik denk ik er eerst een functie van maken of kan ik het op een betere manier doen?
Ik zou wel je exit; weghalen. Ik schop ook nooit iemand de deur uit als ze geen cadeautjes bij zich hebben ;-).
Lijn 9 is ook zinloos.
Gewijzigd op 07/04/2023 15:54:34 door - Ariën -
lol, Ja in principe herhaalt de code zich grotendeels wel ja
Gewijzigd op 07/04/2023 16:06:04 door - Ariën -
uit de $_GET
PS: Denk aan SQL-injection bij $_GET!!
Alvast bedankt voor een paar goede tips.
Toevoeging op 09/04/2023 17:57:44:
Ik heb een database naam : Vakantie
Daarin heb ik dus een tabel options, met deze velden
|ID|Option|Term|
De andere tabel is UserOptions, met deze velden
|ID|Options_ID|User_ID
Nu moet dus gekeken worden per gebruiker, welke Options zij hebben, dus ik zoeken hoe ik dit kon doen, kwam ik INNER JOIN tegen op internet. Is dit de oplossing en zo ja, hoe pass ik dit goed toe?
Toevoeging op 09/04/2023 18:41:34:
ik heb nu dit in de database toegepast, maar als ik de LIMIT weg laat, haat hij alles op, ook waar geen user_id bij staat.
Code (php)
1
2
3
2
3
<?php
Select UserOptions.User_ID FROM UserOptions INNER JOIN Options ON Options.ID WHERE UserOptions.User_ID = 3;
?>
Select UserOptions.User_ID FROM UserOptions INNER JOIN Options ON Options.ID WHERE UserOptions.User_ID = 3;
?>
Toevoeging op 09/04/2023 19:04:41:
Ik heb de code en werkt.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
$sql = 'SELECT * FROM UserOptions WHERE User_ID = '.$UserID.'';
$result = mysqli_query($connect, $sql);
$rows = mysqli_num_rows($result);
if($rows == 0) {
echo "<div class='view-grid'>".$rows." = No Options found by user!<br /></div>";
}else{
echo "<div class='view-grid'>Options that the user provide</div>";
$MySql = 'Select UserOptions.Options_ID, Options.Option FROM UserOptions INNER JOIN Options ON Options.ID WHERE Options.ID = UserOptions.Options_ID;';
$myresult = mysqli_query($connect, $MySql);
$uoptions = mysqli_fetch_all($myresult, MYSQLI_ASSOC);
foreach($uoptions as $options) {
echo "<div>".$options['Option']."</div>";
}
}
?>
$sql = 'SELECT * FROM UserOptions WHERE User_ID = '.$UserID.'';
$result = mysqli_query($connect, $sql);
$rows = mysqli_num_rows($result);
if($rows == 0) {
echo "<div class='view-grid'>".$rows." = No Options found by user!<br /></div>";
}else{
echo "<div class='view-grid'>Options that the user provide</div>";
$MySql = 'Select UserOptions.Options_ID, Options.Option FROM UserOptions INNER JOIN Options ON Options.ID WHERE Options.ID = UserOptions.Options_ID;';
$myresult = mysqli_query($connect, $MySql);
$uoptions = mysqli_fetch_all($myresult, MYSQLI_ASSOC);
foreach($uoptions as $options) {
echo "<div>".$options['Option']."</div>";
}
}
?>