好的,我正在创建一个网站,在网站上我有一点“创建用户”帐户类型,我把它放在index.php上并分配了它的所有值和内容,以便管理员可以创建帐户登录时...
无论如何,所以,我收到了这个错误:
注意:未定义的变量:params in 第62行的C:\ xampp \ htdocs \ staff_inc \ core.inc.php
注意:未定义的变量:params in 第63行的C:\ xampp \ htdocs \ staff_inc \ core.inc.php
注意:未定义的变量:params in 第62行的C:\ xampp \ htdocs \ staff_inc \ core.inc.php
注意:未定义的变量:params in 第63行的C:\ xampp \ htdocs \ staff_inc \ core.inc.php
在该文件中,第62和63行我有
$salt1 = md5( $params['core']['salt1'] );
$salt2 = md5( $params['core']['salt2'] );
而且我不确定如何修复它? 我的该函数的完整代码是
public function encrypt( $string ) {
global $vars;
//let's md5 that salt and the string.
$salt1 = md5( $params['core']['salt1'] );
$salt2 = md5( $params['core']['salt2'] );
$string = md5( $string );
//stick them together.
$string = $salt1 . $salt1 . $salt2 . $string . $salt2 . $salt1;
//sha1 then md5 them again.
$string = sha1( $string );
$string = md5( $string );
return $string;
}
答案 0 :(得分:1)
注意非常明确:您没有在函数中定义$params
。
解决方案1:
如果您将$params
作为函数的参数传递,则需要将参数添加为:
public function encrypt( $string, $params ) {
....
解决方案2:
如果$params
是一个全局变量,则需要定义为:
public function encrypt( $string ) {
global $vars, $params; // defined here
// your remaining stuff
}
解决方案3:
正如我在评论中提到的那样,如果$params
等于$vars
,因为您在函数中没有使用$vars
而不是像以下所使用的那样:
public function encrypt( $string ) {
global $vars;
$salt1 = md5( $vars['core']['salt1'] );
$salt2 = md5( $vars['core']['salt2'] );
$string = md5( $string );
// your remaining stuff
}
旁注:
我不认为,是否有第四种选择。
答案 1 :(得分:0)
似乎$params
应该是全局变量:
public function encrypt( $string ) {
global $vars; /* you don't use this, btw. */
global $params;
/* other code goes here */
}