/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Sikre records i MySQL db
Fra : Jacob Nielsen


Dato : 01-09-03 22:03

Hej,


Jeg har egentlig to spørgsmål der vedrører subj. Det første kommer her:

1: I mit menu system har jeg to tabeller, en der holder styr på menupunkters
placering og så en der indeholder informationer om det enkelte menupunkt.
Det er også fint nok, men når jeg tilføjer et nyt menupunkt er jeg lidt i
tvivl om min fremgangsmåde er sikker nok hvis f.eks. to brugere opretter et
menupunkt på samme tid. Jeg gør det på følgende måde:
1. Indsæt menupunkt i menu tabellen (menu)
2. Vælg det sidst indsatte id vha. LAST_INSERT_ID() fra menu tabellen
3. Indsæt info i den anden tabel (content)
Her under ses mine SQL sætninger:

strInsertNewPidSQL = "INSERT INTO menu(parent_pid,menu_sortorder) VALUES(" &
intParentPid & "," & intMenuSortOrder & ")"
Conn.Execute(strInsertNewPidSQL)

strSelectLastInsertedRecordSQL = "SELECT LAST_INSERT_ID() AS intLastId FROM
menu"
Set objLastRecordRS = Conn.Execute(strSelectLastInsertedRecordSQL)

strInsertIntoContentSQL = "INSERT INTO content(pid, lng, show_status,
content_name, module_id) VALUES (" & objLastRecordRS("intLastId") & ",'" &
strLng & "','2','" & strContentName & "'," & intModuleId & ")"
Conn.Execute(strInsertIntoContentSQL)

Er jeg hermed sikret fra at der bliver indsat et forkert id i content
tabellen hvis to brugere samtidig opretter et menupunkt?

Og mit andet spørgsmål:

2: I min content tabel ligger der et felt der hedder content (af typen
text). Dette kan man vha. en tekstboks redigere i, og det bliver bare hentet
ind i tekstboksen vha. en ganske almindelig SELECT, men det går jo ikke at
to brugere f.eks. samtidig kan ændre i indholdet, så hvordan låser jeg
recorden når en bruger redigerer i den? Og hvis recorden er låst skal der jo
gerne komme en fejlmeddelse til andre der prøver at redigere i denne record.

Håber der er nogen der kan og vil hjælpe, og hvis jeg ikke har været
forklarende nok må i endelig bare spørge og så skal jeg forsøge at uddybe.

Mvh. Jacob



 
 
Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste