0

今週末、コンピューターをフォーマットして再インストールしました。今日、先週プログラミングしたいくつかの php ページで作業を続けようとすると、localhost サーバーで php コードを実行すると、次のようになります。

「通知: 未定義の変数: 1970 年 1 月 1 日 42 行目の 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クエリの1つ:

        $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"];
        }        

SQLクエリの結果を含む配列を保持する$row変数が定義されていないと言っています...しかし、2日前、サーバーOSを再インストールする前に、変数を定義する必要はありませんでした!!

4

2 に答える 2

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 マニュアル

于 2013-05-13T14:04:58.560 に答える
0

あなたはおそらく次のようなことをしています

$result = $consulta + 1;

これまでに $consulta に値を割り当てたことはありません。最初に変数を割り当てずに「読み取り」コンテキストで変数を使用すると、新しいバージョンの PHP はその警告をスローします。

やっている

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

読み取りコンテキストで使用される前に変数の値を定義したため、問題は解決します。

于 2013-05-13T14:09:09.997 に答える