Hiya,
I've been messing about with a small database based off a page of the tcler's
wiki.
https://blog.tcl.tk/1598
However I am running in to issues that an array variable are not being kept and
are lost when the connection closes.
If I run the following proc via command line (tclsh) it works correctly. When I
use naviserver, I lose the array each session
proc getFormValue {formName} {
set rawData [ns_getform]
set formData [ns_set get $ rawData $formName]
} ;#end procedure
proc storageUpdate {} {
#Get details from HTML form served via naviServer
set Owner [getFormValue Owner] ;# getFormValue = ns_getform
set Name [getFormValue Name]
set dbToken [getFormValue dbToken]
set dbRecord getFormValue dbRecord]
puts "$Owner :: $ Name :: $dbToken :: $dbRecord"
#Confirms this is collecting the results from the form
#Lets database
set db(lastid) 0
set id [incr db(lastid)]
set db($id,petOwner) "$petOwner"
set db($id,petName) "$petName"
set db($id,isa) pet
#Output variables available
puts "Vars available:: [info vars]"
puts "Output :: [db'get db $dbRecord petName]"
} ;#end procedure
How can I keep the variables within Navi after the connection has closed?
Would this be because each connection is spawned in to a interpreter?
I can save the entries to file but don't want to reload the database file each
session. And i'd rather not use a third-party database software like MySQL,
sqlite etc..
Thanks,
Fox
_______________________________________________
naviserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/naviserver-devel