Voor een opdracht voor school moet ik een configuratiemanagement applicatie maken, nu heb ik vrij weinig ervaring met PHP en MySQL maar ik heb ondertussen wel al een paar simpele php scripts gemaakt.
Nu heb ik het voor elkaar gekregen om een configuratie toe te voegen aan de mysql database door middel van een form, ook heb ik een pagina waarin alle configuraties worden weergegeven in een tabel.
Nu wil ik ook graag een optie/knop in die tabel waarmee ik een specifieke configuratie/record kan aanpassen en updaten, ik heb al op internet naar informatie gezocht maar ik zie door de bomen het bos niet meer.
Je zou een link kunnen maken naar settings.php, waar je dan aan de hand van GET-waardes aan kan geven welke optie je wilt aanpassen en welke waarde je daarvan wilt gebruiken.
"settings.php?id=1&setting=merk&value=Sony"
Dan even uitlezen en met een UPDATE-query de boel aanpassen.
- gebruik MySQLi of PDO in plaats van mysql_-functies
- zorg dat je een character encoding selecteert bij het maken van je database-connectie
En dan wat Aar zegt: bak een formuliertje waarbij je refereert aan hardwarebeheer.id via een variabele in je URL. (aanroep: wijzig.php?id=1234, uitlezen in wijzig.php via $_GET['id']).
De id is in dit geval het serienummer van de PC en is ook de PK, moet ik dit veranderen naar autoincrement zodat er steeds een automatische unieke ID word gemaakt voor elke nieuwe configuratie?
Mijn database tabel ziet er nu zo uit:
moet ik dit veranderen naar autoincrement zodat er steeds een automatische unieke ID word gemaakt voor elke nieuwe configuratie?
Dat lijkt mij wel zo handig ja.
EDIT: actually: misschien moet je het serienummer van een PC in een apart veld opslaan met de eigenschap "UNIQUE" als deze ook echt uniek is. Daarnaast heb je een auto-increment veld die als enig doel heeft om de informatie van een record "bij elkaar te houden".
Als het serienummer uniek is dan is het niet nodig om nog eens extra een unieke auto increment kolom als primary key te gebruiken. Men noemt dit niet voor niets surrogate keys.
Het probleem is dat de serienummers van de pc's die we hier hebben nogal lang zijn, voorbeeld: CZCXXXXXX
Hoe krijg ik dit voor elkaar: "bak een formuliertje waarbij je refereert aan hardwarebeheer.id via een variabele in je URL. (aanroep: wijzig.php?id=1234, uitlezen in wijzig.php via $_GET['id'])."
Het formulier maken is geen probleem, maar hoe zorg ik er voor dat als ik op een van de configuraties klik (op het ID denk ik) dat ik dan automatisch naar die pagina word gestuurd waarop ik de configuratie kan aanpassen?