我正在尝试从我的sql db中的某一行中选择数据。这是我使用的代码:
mysql_connect($hostname,$username,$password) or die('connection error '.mysql_error()); mysql_select_db($dbname) or die('selection error '.mysql_error());
$select = mysql_query("SELECT FROM WordPress_theme_customers WHERE ". "GDI_Username = '$sponsor_GDI_id' AND Unique_id = '$sponsor_refference'");
while($check = mysql_fetch_array($select)) {
$sponsor_email = $check["Email"];
$sponsor = $check["GDI_Username"];
$sponsor_first_nme = $check["First_Name"];
$sponsor_second_nme = $check["Last_Name"];
$sponsor_domain = $check["GDI_Domain"];
$unq_id = $check["Unique_id"];
}
我一直收到这个错误: “警告:mysql_fetch_array():提供的参数不是第10行/SC/sponsor.php中的有效MySQL结果资源”
第10行是:while($check = mysql_fetch_array($select)) {
我确保数据库信息正确,包括表名,但仍然没有。
感谢
答案 0 :(得分:2)
您的查询有语法错误,导致msyql_query()
返回布尔值FALSE,而不是结果句柄。尝试做:
$sql = "SELECT FROM WordPress_theme_customers WHERE ". "GDI_Username = '$sponsor_GDI_id' AND Unique_id = '$sponsor_refference'";
$select = mysql_query($sql) or die($sql . "<br>" . mysql_error());
将查询放入自己的变量中可让您单独检查它,or die(...)
将告诉您查询失败的具体原因。
语法错误本身就在这里:
SELECT FROM WordPress_theme_customers
^--- here
您没有指定要检索的任何字段。至少应该是:
SELECT * FROM ...
答案 1 :(得分:1)
SQL查询中存在错误,应该是SELECT *或SELECT某些列名。
答案 2 :(得分:0)
此警告通常表示在执行SQL查询期间出现错误 - mysql_query()
未返回有效的结果资源。
您可以使用mysql_error()
查找查询导致的错误:
$select = mysql_query("SELECT FROM WordPress_theme_customers WHERE ". "GDI_Username = '$sponsor_GDI_id' AND Unique_id = '$sponsor_refference'");
if (!$select) {
// this is for debugging -- you don't display an error and die
// in a portion of code that goes on a production server !
echo mysql_error();
die;
}
这里的问题是您没有指定应选择哪些字段:您应该添加一个字段列表,以便在select
和from
之间进行选择:
select name_of_field1, name_of_field2 from ...
或者,要选择所有字段,请使用*
:
select * from WordPress_theme_customers WHERE...