2016-01-23 40 views
-1

我有一个由查询组成的页面模板(WordPress),并显示查询的输出。它已停止工作。查询在phpMyAdmin中工作。

$strSQL = "SELECT xgqq_cimy_uef_data.ID, xgqq_cimy_uef_data.USER_ID, xgqq_cimy_uef_data.FIELD_ID AS UserID, xgqq_cimy_uef_data.VALUE AS Phone, xgqq_usermeta.user_id AS TheID, xgqq_usermeta.meta_key, xgqq_usermeta.meta_value AS FirstNameField, xgqq_usermeta_1.umeta_id AS LastNameID, xgqq_usermeta_1.meta_key, xgqq_usermeta_1.meta_value AS LastNameField, xgqq_users.user_email FROM ((xgqq_cimy_uef_data INNER JOIN xgqq_users ON xgqq_cimy_uef_data.USER_ID = xgqq_users.ID) INNER JOIN xgqq_usermeta ON xgqq_users.ID = xgqq_usermeta.user_id) INNER JOIN xgqq_usermeta AS xgqq_usermeta_1 ON xgqq_usermeta.user_id = xgqq_usermeta_1.user_id WHERE (((xgqq_cimy_uef_data.USER_ID)<>1) AND ((xgqq_cimy_uef_data.FIELD_ID)=4) AND ((xgqq_usermeta.meta_key)='first_name') AND ((xgqq_usermeta_1.meta_key)='last_name')) ORDER BY xgqq_usermeta_1.meta_value";

$result = mysql_query($strSQL); 

     while ($row = mysql_fetch_assoc($result)) { 

     $firstname = $row['FirstNameField']; 
     $lastname = $row['LastNameField']; 
     $email = $row['user_email']; 
     $phone = $row['Phone']; 
     $profile = $row['USER_ID']; 

     //Outputs results into a table 
     echo' <tr> 
        <td>' . $firstname .' ' . $lastname .'</td> 
        <td><a href="mailto:' . $email.'">' . $email.'</a></td> 
        <td>' . $phone .'</td> 
        <td><a href="?profile_id='. $profile .'">View Profile</a></td> 
       </tr>'; 
     } 

当我打开错误报告上指出

$result = mysql_query($strSQL); 

为的问题。尽管在这里和其他地方尝试了一些建议,但我不太确定要改变什么,但它不起作用。

+1

您使用的是哪个版本的PHP? Mysql从php 7中消失了。 –

+2

如果将php错误置于您的问题中,将会很清楚。 – pgk

+0

删除这些括号(xgqq_cimy_uef_data.USER_ID)不需要也从其他列 – devpro

回答

0

你的查询应该可以工作,如果它不工作,我猜测的唯一原因是你使用的是最新版本的php,而Mysql在最新版本的php中折旧。

+3

这实在比评论还要多。不仅仅是在最新版本(从PHP 5.5开始)中被弃用,它在PHP 7中完全被删除。 – Qirel

+0

Mysql不被弃用... mysql_ *扩展名被弃用,并在php7中关闭 – devpro