![]() |
Form repopulate on error and edit mode - Printable Version +- CodeIgniter Forums (https://forum.codeigniter.com) +-- Forum: Archived Discussions (https://forum.codeigniter.com/forumdisplay.php?fid=20) +--- Forum: Archived Development & Programming (https://forum.codeigniter.com/forumdisplay.php?fid=23) +--- Thread: Form repopulate on error and edit mode (/showthread.php?tid=41065) |
Form repopulate on error and edit mode - El Forum - 04-27-2011 [eluser]John5788[/eluser] Hello, I just updated to CI 2.0.2 and I am running into some problems. My form uses the form helpers, so I have a bunch of code that looks like this Code: <?php echo form_input("x", set_value("x", $input_x)); ?> I am using the first parameter of set_value() for form validation error. The second parameter is default value on edit mode. I found this technique on the forum a long time ago. I am trying to share the same form view so I don't have to duplicate code and this method worked well until 2.0.2. PHP ERROR notices are thrown because $input_x does not exist until I call the controller function in charge of populating $input_x, $input_y, $input_z. I am not sure why it didn't happen in the past, but I am curious how to get around this? I know I can just add an if statement such as Code: <?php but it just looks too verbose. Any other approaches? TLDR: I need some way to share same form view on add and edit. Solutions? Form repopulate on error and edit mode - El Forum - 04-27-2011 [eluser]InsiteFX[/eluser] Did you try this? Code: class some_class extends CI_Controller { InsiteFX Form repopulate on error and edit mode - El Forum - 04-27-2011 [eluser]John5788[/eluser] [quote author="InsiteFX" date="1303905978"]Did you try this? Code: class some_class extends CI_Controller { InsiteFX[/quote] Sorry, I am not sure how that is supposed to help? The problem is on the view side. The example code I posted up Code: <?php echo form_input("x", set_value("x", $input_x)); ?> is on my view. The controller populates $input_x, $input_y, and $input_z in my edit() function correctly. It's just that the edit() and add() functions both share the same form view, but $input_x, $input_y, $input_z does not exist in add(). Form repopulate on error and edit mode - El Forum - 04-27-2011 [eluser]InsiteFX[/eluser] Because you are defining the variables before they are used! Form repopulate on error and edit mode - El Forum - 04-27-2011 [eluser]John5788[/eluser] [quote author="InsiteFX" date="1303906580"]Because you are defining the variables before they are used![/quote] I tried your idea but it did not work. I did find that if I populate $input_x, $input_y, $input_z with blank strings in my add() function, it will not throw the php error. But then my controller just looks silly with a bunch of blank values. I suppose I will use this until something better comes up. Form repopulate on error and edit mode - El Forum - 04-27-2011 [eluser]toopay[/eluser] What about this.. Code: <?php Form repopulate on error and edit mode - El Forum - 04-28-2011 [eluser]John5788[/eluser] [quote author="toopay" date="1303907052"]What about this.. Code: <?php ive spent too much time away from PHP. forgot about ternary statements. thanks. |