2010-09-04 34 views
0

我試圖上傳我的項目我的機器,而且我從MySQL得到錯誤的是:執行拒絕用戶tisegoco_goitse「@例行的「localhost」命令「tisegoco_tisego.offices

execute command denied to user 'tisegoco_goitse'@'localhost' for routine 'tisegoco_tisego.offices 

我授予此用戶在數據庫上的所有權限。

現在我試圖訪問這個程序:

delimiter // 
create procedure sample() 
begin 
     select * from tblusers; 
end 
delimiter ; 

和PHP代碼如下:

require ("db.php"); 
$db = dbConnect(); 

$result = $db->query("CALL sample()"); 
echo $db->error; 
while(list($id, $city, $address) = $result->fetch_array()) 
echo "($id) $city: $address <br />"; 

請幫忙,謝謝。

+0

你是否設法在遠程站點上得到一個簡單的SQL查詢?即$ db-> query(「SELECT version()」); 另外,它可能值得創建一個「離散測試文件夾」進行實驗。而不是在主頁上回顯這些東西。 – 2010-09-04 14:42:43

+0

@JW那$ db-> query(「SELECT version()」);代碼工程 – mneva 2010-09-04 17:48:01

回答

0

您可能在共享服務器上。

Cpanel/PHPMyAdmin不允許用戶賦予基於cPanel的共享服務器的執行權限。 該問題只能由具有root訪問權限的虛擬主機公司修復。要求他們授予所需的權限。

即使您自己授予所有權限,您也不會獲得執行權限。

0

現在忘記存儲過程,並嘗試做一個簡單的查詢來看看像這樣。

把它在小步驟。

<?php 

    require ("db.php"); 

    $db = dbConnect(); 

    echo 'Doing query...'; 

    $result = $db->query("SELECT * FROM offices"); 

    if (!(is_object($result))) 
     { 
     echo 'No result returned from query'; 
     //echo $db->error; 
     } 
    else 
     { 

     while(list($id, $city, $address) = $result->fetch_array()) 
     { 
     echo "($id) $city: $address \n"; 
     } 
     } 


    ?> 
+0

這個完美的作品,但不是我的存儲過程 – mneva 2010-09-04 17:52:12

+0

'完美的作品' - 我會停在那裏。你必須質疑你是否需要使用存儲過程。如果它們是必需的(考慮到MySQL在沒有它們的情況下存活到第5版,這是不太可能的),那麼你需要確保db用戶在'offices'表上具有'執行'權限以使你的應用程序正常運行。這很容易取決於您的主機設置/您切換主機的能力。請先閱讀:http://xprogramming.com/Practices/PracSimplest.html – 2010-09-05 04:59:06

相關問題