Hallo,

Ik ben bezig om een website te maken en om een hele lange html code te schrijven voor een form, wil ik alles in de DBase wegzetten. Echter kom ik tot de conclusie dat je wel alles kunt wegzetten, maar het ophalen ervan nu anders werkt.

wat ik nu alvast heb, is dit :

<?php
$sql = 'SELECT * FROM options ORDER BY ID';
		$result = mysqli_query($connect, $sql);
		$news = mysqli_fetch_all($result, MYSQLI_ASSOC);
		
		foreach($options as $option)
			{
			echo '<label class='labels'>.'$option['option01']'.<input type='checkbox' id='.$option['option01'].' name='.$option['option01'].' value='.$option['option01'].'></label>';
			}
?>


Echter op ID '1' zijn 48 opties en elke optie heet option(xx) (de xx staat voor een nummer, bijvoorbeeld : option01, option02 etc..)
Dit gaat door tot 48 en elke option heeft een ingevoerde waarden, nu wil ik dus voor de form dat hij elke option ophaalt en dit in de page laadt.

Hoe kan ik ervoor zorgen dat hij elek option ophaalt met de weg geschreven waarde?
Ik neem van harte aan dat je geen losse velden hebt die je nummert, maar dat je records/items bedoelt.
Anders ben je sowieso verkeerd bezig door horizontaal uit te bouwen in plaats van verticaal.

<?php
$sql = 'SELECT * FROM options ORDER BY ID';
$result = mysqli_query($connect, $sql);
while($data = mysqli_fetch($result))
{
echo '<label class="labels">.'$data['option']'.<input type="checkbox" id="'.$data['option'].'" name="'.$option['option01'].'" value="'.$option['option'].'"></label>';
}
?>
Hmmmm,

ja dan betekend het 48 id inbouwen voor elk een aparte option. misschien wel beter.
het veld ID kan je op Primairy Key zetten en AutoIncrement aan.
Vanaf dat moment heb je voor elk item/record die je aanmaakt een oplopend ID: 1,2,3,4 etc...

Of moet een item meerdere opties kunnen krijgen?
Eigenlijk is het alleen voor het ophalen van de opties, want als ik een nieuwe gebruiker invoer, wil ik dat hij gewoon de opties uit de dbase haalt.
Anders moet ik een enorme html code schrijven en voor elke optie een input veld maken.
Zo kan ik als ik klaar ben met het invoeren van de gebruiker, de opties gebruiken die geselecteerd zijn en die outputten naar de front end.
Wat stellen die opties precies voor? Kan je ze een naam geven?

Dus als voorbeeld en bij wijze van spreke wil je bijvoorbeeld een item, laten we bijvoorbeeld een persoon zeggen, de opties: schepje, strandstoel en parasol geven?
zoiets ja

[size=xsmall]Toevoeging op 21/03/2023 20:42:27:[/size]

Maar even een andere vraag tussendoor, hoe haal ik in PhpMyAdmin een ID gap weg?
Ik heb nu ID 1, ID 2 en dan ineens ID 6, hoe haal ik die gap weg?
Waarom zou je die leegte weg willen? Stel dat er ergens nog een 3 is gekoppeld, en je hangt er een nieuw item met nummer 3 aan, dan zit je jouw data te vernachelen met foute koppelingen.

Als je meerdere opties wilt koppelen aan een item, dan moet je een tussen tabel gebruiken met twee entiteit-tabellen.

Je hebt de tabel met Opties, waarbij elke omschreven optie een uniek ID-nummer heeft.
Je hebt de tabel Gebruikers, waarbij elke gebruiker een uniek ID-nummer heeft.
Je hebt een tabel met OptiesGebruikers waarin je per record het ID van de optie noemt, en het ID van de gebruiker.

De database wordt nu pas opgebouwd en ik moet die gap weg hebben.
TRUNCATE tabel voor het gemak.

Verder maakt die ID gap weinig uit, tenzij je iets van OCD hebt :-P
Hmmm, dat hebben ze uitgeschakeld

Reageren