我一直在這個工作了一個多月,並且在這段代碼中看不到任何錯誤。它運行良好,直到兩個月前。我開始得到這個錯誤:警告:mysql_num_rows():提供的參數不是第41行(第41行是$ num = mysql_num_rows($ result);)的functions.php中的有效MySQL結果資源。我確定它與數據庫連接並在整個文件中檢查了括號。當我使用mysql_error檢查錯誤時,我掛斷電話查詢在第40行爲空,如下所示。我花了很多小時試圖通過閱讀帖子在這裏stackoverflow,但需要更多的幫助。謝謝。查詢是空的,其他錯誤
function query_sql($sql)
{
$username="somename";
$password="mypassword";
$database="database2";
$link=mysql_connect("sqlserver.myserver.net",$username,$password);
@mysql_select_db($database,$link);
$result = mysql_query ($sql)or die(mysql_error());
$num=mysql_num_rows($result);
mysql_close();
return $result;
}
以下是包含$ sql變量的主頁面中的代碼。
<?php
include 'modules/functions.php';
update_log($_SERVER['PHP_SELF'], "");
if(isset($_SERVER['PHP_AUTH_USER']))
{
$User = $_SERVER['PHP_AUTH_USER'];
$sql = "select Username from users where Username = '".$_SERVER['PHP_AUTH_USER']."'";
$get_results = query_sql($sql) or die('Query failed: ' . mysql_error() . "<br />\n$sql");
$row = mysql_fetch_assoc($get_results);
}
else
{
header('Location: ../index.php');
}
$sql = 'select Name, Category, Category2, Private, Staff from users where Username = "'.$User.'"';
$get_user_access = query_sql($sql);
$sql = '';
「查詢爲空」表示您的$ sql變量是空字符串。你傳遞給你的功能是什麼?調試。 – mario 2013-03-14 22:16:12
我編輯了主帖以包含更多的代碼,謝謝。 – 2013-03-15 18:40:33
所示代碼甚至不會運行:'$ get_user_access $ get_user_access = query_sql($ sql);'。向我們展示您實際運行的代碼。 – 2013-03-15 19:26:11