2013-05-13 40 views
0

這個週末我格式化並重新安裝了我的電腦:今天,當我嘗試繼續工作一些php頁面時, 「在d CONSULTA::通知:未定義的可變\ WEBS \ WP \ lbodas.php上線路42 1日enero日1970」:本地主機服務器上執行PHP代碼我得到一個我的代碼在apache(xampp)重新安裝後出現「undefined variable」錯誤

它發生在執行SQL查詢的所有PHP頁面上(在重新安裝之前完美工作)。

我必須缺少一些配置調整(在php.ini,httpd.conf或一些其他的Apache配置文件),有人可以指出我失去了什麼?

在此先感謝


這裏是我使用的代碼。 要瞬移到DDBB:

$bd_host='localhost'; 
$bd_login='MYLOGIN'; 
$bd_clave='MYPASSWORD'; 
$bd_nombre='MYDATABASE'; 

connecttodb($bd_host,$bd_nombre,$bd_login,$bd_clave); 
function connecttodb($bd_host,$bd_nombre,$dbuser,$bd_clave) 
{ 
    global $conn; 
    $conn=mysql_connect ("$bd_host","$dbuser","$bd_clave"); 
    mysql_query("SET NAMES 'utf8'"); 
    if(!$conn){die("CONNECTION ERROR");} 
    //mysql_query("SET NAMES 'utf8'"); 

    mysql_select_db("$bd_nombre",$conn) or die ("CONNECTION ERROR".mysql_error()); 
} 

這曾經工作過的SQL查詢之一,但重新安裝後不能正常工作:

 $sql = "SELECT * FROM cat_prov ORDER BY categoria ASC"; 
     $rs_result = mysql_query ($sql, $conn); 

     while ($row = mysql_fetch_assoc($rs_result)) { 
      $categoria=$row["categoria"]; 
      $notas=$row["notas"]; 
     }   

它說,$ row變量,至極持有該數組與結果的SQL查詢,尚未定義...但前兩天,服務器操作系統重新安裝之前,我沒有定義變量!

+2

分享一些代碼來幫助你更好 – karthikr 2013-05-13 13:47:45

+0

顯示代碼,但馬上我想到了register_globals參數,你不應該使用它。 – Sebas 2013-05-13 13:47:48

+1

您的通知已啓用,因此它警告您在使用前未聲明變量 – Dave 2013-05-13 13:48:31

回答

1

您的新安裝的錯誤報告設置爲E_ALL,它也顯示通知。嘗試

// Report all errors except E_NOTICE 
// This is the default value set in php.ini 
error_reporting(E_ALL^E_NOTICE); 

來源:PHP Manual

0

你可能做這樣

$result = $consulta + 1; 

沒有的東西在此之前CONSULTA永遠不必指定了價值$。任何時候,如果在「讀取」上下文中使用變量,而沒有先分配變量,PHP的更新版本將拋出該警告。

$consult = 0; 
$result = $consulta + 1; 

就能解決問題,becase的你定義的變量的值,然後纔在讀上下文中使用。