严重性:警告消息:ForgotPassword::FormEditPassword()文件名:controllers/ForgotPassword.php行号:12缺少参数1
我在运行项目时收到此消息 严重性:警告消息:缺少的参数1 ForgotPassword::FormEditPassword文件名: controllers/ForgotPassword.php行号:12回溯:文件: C:\xampp\htdocs\Telkom\application\controllers\ForgotPassword.php 行:12函数:\u错误\u处理程序文件: C:\xampp\htdocs\Telkom\index.php行:315函数:需要一次 遇到PHP错误严重性:注意消息:未定义 变量:id\u用户文件名:controllers/ForgotPassword.php行 编号:14回溯:文件: C:\xampp\htdocs\Telkom\application\controllers\ForgotPassword.php 行:14函数:\u错误\u处理程序文件: C:\xampp\htdocs\Telkom\index.php行:315函数:需要一次 这是我的控制器严重性:警告消息:ForgotPassword::FormEditPassword()文件名:controllers/ForgotPassword.php行号:12缺少参数1,php,html,codeigniter,Php,Html,Codeigniter,我在运行项目时收到此消息 严重性:警告消息:缺少的参数1 ForgotPassword::FormEditPassword文件名: controllers/ForgotPassword.php行号:12回溯:文件: C:\xampp\htdocs\Telkom\application\controllers\ForgotPassword.php 行:12函数:\u错误\u处理程序文件: C:\xampp\htdocs\Telkom\index.php行:315函数:需要一次 遇到PHP错误严重性
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class ForgotPassword extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('m_forgotpassword');
}
public function FormEditPassword($id_user)
{
$data['akun']=$this->m_forgotpassword->get_data_selected($id_user)->result();
$this->load->view("forgotpassword", $data);
}
public function AksiEditPassword()
{
$this->m_forgotpassword->EditDataPasword();
redirect(base_url('index.php/login'));
}
}
这是我的模型
<?php
/**
*
*/
class m_forgotpassword extends CI_Model
{
function EditDataPassword()
{
$data = array(
'email' => $this->input->post("email"),
'password' => $this->input->post("password"),
);
$this->db->where("id_user",$this->input->post("id_user"));
$this->db->update("akun",$data);
}
function get_data_selected($id_user)
{
$this->db->where("id_user",$id_user);
return $this->db->get("akun");
}
}
?>
这是我的观点
<head>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
<link href="<?php echo base_url() ?>assets/css/login.css" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<link rel="icon" type="image/png" href="<?php echo base_url() ?>assets/img/icon.png">
<title>TELKOM - PT. Telekomunikasi Indonesia Tbk</title>
</head>
<body>
<div class="main">
<div class="container">
<center>
<div class="middle">
<div id="login">
<?php
echo form_open_multipart("forgotpassword/AksiEditPassword", array("class"=>"form-horizontal"));
foreach ($akun as $a) {
echo form_input(array("name" => "email",
"value" => $a->email,
"class" => "form-control",
"placeholder" => "Email",
"type" => "text"));
echo form_input(array("name" => "password",
"value" => $a->password,
"class" => "form-control",
"placeholder" => "New Password",
"type" => "text"));
echo form_input(array("name" => "id_user",
"value" => $a->id_user,
"type" => "hidden"));
echo form_input(array("class" => "btn btn-success",
"type" => "submit",
"value" => "Submit"));
}
?>
<span style="width:50%; text-align:right; display: inline-block;"><a class="small-text" href="<?php echo base_url('index.php/login')?>">Cancel</a></span>
</div> <!-- end login -->
<div class="logo">
<img src="<?php echo base_url('assets/img/logo2.png')?>" style="margin-left: 50px; width: 300px; height: 150px;">
<div class="clearfix"></div>
</div>
</div>
</center>
</div>
</div>
</body>
在控制器中,您需要将数据传递给模型函数,如下所述
public function AksiEditPassword()
{
$param = $this->input->post();
$this->m_forgotpassword->EditDataPasword($param);
redirect(base_url('index.php/login'));
}
function EditDataPassword($param = null)
{
$updData['email'] = $param['email'];
$updData['password'] = $param['password'];
$this->db->where("id_user",$param['id_user']);
$this->db->update("akun",$updData);
}
在模型中,函数如下所示
public function AksiEditPassword()
{
$param = $this->input->post();
$this->m_forgotpassword->EditDataPasword($param);
redirect(base_url('index.php/login'));
}
function EditDataPassword($param = null)
{
$updData['email'] = $param['email'];
$updData['password'] = $param['password'];
$this->db->where("id_user",$param['id_user']);
$this->db->update("akun",$updData);
}
如果不起作用,请告诉我。您正在调用的url应传递参数$user\u id,例如: 2表示您的$id\u用户参数 控制器:
public function FormEditPassword($id_user = NULL) // if no data is passed the variable is set to null
{
if($id_user){
$data['akun']=$this->m_forgotpassword->get_data_selected($id_user)->result();
}
$this->load->view("forgotpassword", $data);
}
视图:
<?php
echo form_open_multipart("forgotpassword/AksiEditPassword", array("class"=>"form-horizontal"));
if($akun){ // always check value exist before assigning any variable
foreach ($akun as $a) {
echo form_input(array("name" => "email",
"value" => $a->email,
"class" => "form-control",
"placeholder" => "Email",
"type" => "text"));
echo form_input(array("name" => "password",
"value" => $a->password,
"class" => "form-control",
"placeholder" => "New Password",
"type" => "text"));
echo form_input(array("name" => "id_user",
"value" => $a->id_user,
"type" => "hidden"));
echo form_input(array("class" => "btn btn-success",
"type" => "submit",
"value" => "Submit"));
}
}else{
echo "Value is empty" ;
}
提示:文件和类的命名错误。类的第一个字母应该是大写,其余的字母应该是小写。此处和控制器函数上解释了try FormEditPassword$id\u user=您的$id\u user是必需的参数,但其缺少tats错误将其更改为公共函数FormEditPassword$id\u user=NULL@wolfgang1983我已经更改了我的命名文件和类,但什么都没有更改change@UlfahPutri它只是一个包含表单而不是加载的tipMy视图