retaining a value in a controller variable - Printable Version +- CodeIgniter Forums (https://forum.codeigniter.com) +-- Forum: Archived Discussions (https://forum.codeigniter.com/forumdisplay.php?fid=20) +--- Forum: Archived General Discussion (https://forum.codeigniter.com/forumdisplay.php?fid=21) +--- Thread: retaining a value in a controller variable (/showthread.php?tid=31447) |
retaining a value in a controller variable - El Forum - 06-19-2010 [eluser]ssachan[/eluser] Hello Developers I am stuck at a design issue. I have a controller class which has a variable var id It is set in a function A and is required in all the functions in this controller (lets say B, C and D) Now functions B,C,D and called for my views which leads to reinitialization of the controller and loss of id which was set in function A. The only solution I see is to pass the id to my views and then again to all the functions B, C and D whenever they are called. But I guess is this is not the best way to do it. Is there any way I can set the value of id and retain it till its changed the next time. Thanks retaining a value in a controller variable - El Forum - 06-19-2010 [eluser]erik.brannstrom[/eluser] As you say, one idea is to pass them as parameters in the URL. If you wish to "hide" the variable value a better solution is to use sessions. Read up on it here: http://ellislab.com/codeigniter/user-guide/libraries/sessions.html retaining a value in a controller variable - El Forum - 06-19-2010 [eluser]ssachan[/eluser] session and cookies are one way but then this is not session data. It is an id and the best way would be to have a system to retain this value in my controller as I move between my controller and views. So is there anyway ? retaining a value in a controller variable - El Forum - 06-19-2010 [eluser]erik.brannstrom[/eluser] If it is a value that might differ between requests (that is, it is not a constant), as I see it you've got those two options, either pass them publicly in your URL via links or privately, using sessions, a database or file writes. Session data is whatever data you keep in a session, so I don't see a reason why not to keep it there. Anyway, your description of the problem is a bit vague, so if you wish a more detailed answer please expand on exactly how you wish things to work. retaining a value in a controller variable - El Forum - 06-19-2010 [eluser]ssachan[/eluser] ok, I am trying to setup a forum. So basically I am passing the topic id to this controller with handles all the comments for this topic. Based on the topic id I load the view showing all the comments and for any new comments posted on this view, I am directed back to the same controller and I need to store the comment with the topic id. What I want to do is store the topic id so that I don't need to pass it back and forth while I traverse between controller and view. And clearly this is not a session data since I may open a lot of topics and hence I cannot override this data retaining a value in a controller variable - El Forum - 06-19-2010 [eluser]erik.brannstrom[/eluser] Agreed. I would go with the link approach then, since one might want to bookmark these different views. |