在重新安装apache(xampp)后,我的代码出现“未定义变量”错误

时间:2013-05-13 13:46:18

标签: php apache xampp

本周末我格式化并重新安装了我的电脑:今天当我尝试继续处理我上周编程的一些php页面时,当我在localhost服务器上执行php代码时,我得到了:

  

“注意:未定义的变量:在第42行1 de enero de 1970的D:\ WEBS \ WP \ lbodas.php中的咨询”

它发生在执行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 个答案:

答案 0 :(得分: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

答案 1 :(得分:0)

你可能正在做类似

的事情
$result = $consulta + 1;

在此之前没有为$ consulta分配值。无论何时在“读取”上下文中使用变量,而没有首先分配它,新版本的PHP都会抛出该警告。

否则

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

将解决问题,因为你已经为变量BEFORE定义了一个值,而不是在读取上下文中使用它。