我的注册表单以前运行良好。然而,在注册成功之前,我必须添加一个接受页面或条款和条件。我认为最好将其包含在注册页面中,而不是在注册后(在显示会员主页之前)。问题是,它有很多问题。它工作不正常。
这是我在视图页面中的代码:(我在注册按钮之前的所有字段底部添加了这个)
Please proceed only if you accept our <a target="blank" href="<?php site_url("in/terms_and_conditions");?>">terms and conditions</a>.
<input type='checkbox' name='terms' value='checked' id='terms' required autofocus/><br/>
现在,它似乎工作得很好(验证中内置的代码点火器会提示一条消息,告诉用户在继续操作之前单击)。问题是1。链接("在/terms_and_conditions中")未正确显示。每当点击相应的文本时,它不会显示正确的页面,而是打开一个新的注册页面。第二个问题是存在以下错误:消息:未定义的索引:模型中的c_terms行号:24第24行是这样的:
'terms'=> $post_obj['c_terms']
我试图将其添加到我的数组中。它真的正确吗?显示的第二个错误是:
列"terms"不能为空
INSERT INTO `client` (`first_name`, `last_name`, `email_address`, `password`, `address`, `tagline`, `profile`, `interests`, `billing_mode`, `terms`) VALUES ('dsfhkds', 'hfdskhflk', 'test@yahoo.com', '123456', 'fsdkfhsdk', 'sdkfhsdkf', 'sdklhfslkdhflsdhf', 'kdslhflks', 'Escrow', NULL)
我对原始表所做的是添加了名为"terms"的列,并将其设置为文本类型,没有默认值。
请帮我解决这个问题。
谢谢!
第1期:您是否在/terms_and_conditions中创建了页面?确保
控制器名称:在中
操作名称:terms_and_conditions
第2期:您已将复选框命名为"terms"。然后,你应该得到如下
'terms'=> $post_obj['terms']
第3期:将"terms"列默认值设置为"NULL"
我看到三个问题:
-
您没有回显
site_url
函数的结果。只要把echo
放在它前面。 -
如果
$post_obj
是作为关键字的HTML输入的"$_POSTarray you have to use the
名称"属性:'terms' => $post_obj['terms']
-
您的问题是没有将任何文本设置为保存在
terms
中。将其添加到$this->db->insert('table', $data)
的第二个参数中,如下所示:$data['terms'] = '...'