-2

PHPエラーログでこのエラーが発生する理由を突き止めようとしています。PHP警告:stristr():25行目のfilename.phpの区切り文字が空です

今、私はその行を見て、どの変数も空ではありません。ですから、私はそれについて何も悪いことを見つけることができないので、これに関するどんな助けも素晴らしいでしょう。また、それは機能しますが、警告を出すだけです。直せるか見たいです。以下はコード全体です。

<?php
 if(!$db = @mysql_connect("$dbhost", "$dbuser", "$dbpass"))
 die('<font size=+1>An Error Occurred</font><hr>Unable to connect to the database. <BR>Check $dbhost, $dbuser, and $dbpass in config.php.');

if(!@mysql_select_db("$dbname",$db))
die("<font size=+1>An Error Occurred</font><hr>Unable to find the database <b>$dbname</b> on your MySQL server.");

if (isset($dj)) {
$dj = NULL;
}

$query="SELECT * FROM currentdj";
$result=mysql_query($query);
while($row = mysql_fetch_array($result)) {
    $did = $row['dj'];
    $aliasa = $row['alias1'];
    $aliasb = $row['alias2'];
    $aliasc = $row['alias3'];
    // The following code should detect DJ by song title, for Podcast and Audio Fictions 
    if ((isset($aliasa)) && (stristr($song[0], $aliasa) !== FALSE)) {
    $setby = "Alias1";
    $dj = $did;
    }
    if ((isset($aliasb)) && (stristr($song[0], $aliasb) !== FALSE)) {
    $setby = "Alias1";
    $dj = $did;
    }
    if ((isset($aliasc)) && (stristr($song[0], $aliasc) !== FALSE)) {
    $setby = "Alias1";
    $dj = $did;
    }
    // The following code should detect DJ by server title, for DJS and autodj
    if ((isset($aliasa)) && (stristr($servertitle, $aliasa) !== FALSE)) {
    $setby = "Alias1";
    $dj = $did;
    }
    if ((isset($aliasb)) && (stristr($servertitle, $aliasb) !== FALSE)) {
    $setby = "Alias2";
    $dj = $did;
    }
    if ((isset($aliasc)) && (stristr($servertitle, $aliasc) !== FALSE)) {
    $setby = "Alias3";
    $dj = $did;
    }  
}
?>

したがって、すべてのIfissetステートメントに対してこの警告が表示されます。

4

1 に答える 1

0

よく私は問題を見つけました。警告は、ページだけでphpが変数が空であると見なすために行われますが、メインページに移動すると、情報が変数に読み込まれ、実際には空ではありません。そのため、Webサイトでライブで機能します。 、しかし、これは私がそれを無視することに決めた唯一のエラーであるため、phpエラーページでまだ警告が表示されます、

みなさん、ありがとうございました

于 2013-02-09T22:49:08.500 に答える