2013-12-24 25 views
1

幾年前,我聘請了一位開發人員爲我建立一個網站。當他在網絡服務器上安裝它時,它一直很好地工作。調用未定義的函數錯誤PHP

幾年過去了,現在我試圖重新安裝它,一切工作正常,但管理員登錄區域。當轉到登錄頁面時,您會轉到「index.php」文件,該頁面有一個簡單的表單,連接到數據庫以檢查用戶名和密碼。你點擊登錄按鈕後,調用的形式「的login.php」:

<form action="login.php" method="post" name="form1"> 

然後開始用的login.php下面的代碼:

<?php 
$user = $_POST[user]; 
$pass = $_POST[pass]; 
$ip = $_SERVER['REMOTE_ADDR']; 
$status = authenticate($user, $pass); 
if ($status == 1) 
    { 
    session_start(); 
    session_register("SESSION"); 
    session_register("SESSION_UNAME"); 

    $_SESSION['usuario'] = $user; 
    $SESSION_UNAME = $user; 
    include("../inc/conect_bd.inc.php"); 
    $gravar_log = "INSERT INTO `logs` (`idLogin`, `user`, `data`, `ip`) VALUE ('', '".$_POST['user']."', '".date("d/m/Y-H:i:s")."', '".$_SERVER['REMOTE_ADDR']."')"; 
    $exec_gravar_log = @mysql_query($gravar_log) or die ("Error saving username); 
    header("Location: manager.php"); 
    exit(); 
    } 
else 
    { 
    header("Location: manager.php"); 
    exit(); 
    } 
function authenticate($theuser, $thepass) 
    { 
    include("../inc/conect_bd.inc.php"); 
    $query = "SELECT id from manager WHERE username = '$theuser' AND password = '$thepass'"; 
    $result = @mysql_query($query) or die ("Error in query: $query. " . mysql_error()); 
    if (mysql_num_rows($result) == 1) 
     { 
     return 1; 
     } 
    else{ 
return 0;}} 
?> 

但是當你嘗試登錄我得到以下錯誤

Fatal error: Call to undefined function session_register() in /home/usr/public_html/johntrucks.com/manager/login.php on line 9 

是不是已經在那裏定義了?或者我該如何定義它?

對不起你們,dev的是無處可尋,他的編碼僅僅是非常混亂...在PHP 5.4 http://us.php.net/manual/en/function.session-register.php

更換取出

+3

你甚至沒有谷歌這個,是嗎? http://www.php.net/manual/en/function.session-register.php –

+0

'session_register()從PHP 5.3.0開始已經被取消,從PHP 5.4.0開始已經取消。「# –

+0

你也有一個語法錯誤'死(「錯誤保存用戶名);' – Popnoodles

回答

4

該函數的功能與$_SESSION

調用
$_SESSION["SESSION_UNAME"]; 
+3

+1顯示修復不僅僅是問題 – Popnoodles

相關問題