← Desenvolvimento

Erro "An unexpected database error occurred. Please try again later. "

Lida 4742 vezes

Offline

willypt 
Membro
Mensagens 93 Gostos 5
Troféus totais: 19
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Level 4 Level 3 Level 2 Level 1 50 Posts 10 Posts First Post

Alguém me pode dizer porque isto só acontece aos utilizadores não registados? Se fizer refresh a pagina aparece, se fizer novamente, aparece esse erro, e sempre assim. Não consigo utilizar o site também no webmaster tools uma vez que diz constantemente que a página se encontra inacessível.

Na fonte da página de erro aparece isto:

An unexpected database error occurred. Please try again later.
<!-- Mysqli prepare error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')
            AND profile_user_id = user_id
         ORDER BY post_date DESC
         LIMIT 10' at line 3 -->

Já entendi que é algo na table dos utilizadores que está errado, mas como devo corrigir isto?

Website: http://gamingnovato.pt/

Obrigado desde já
Offline

willypt 
Membro
Mensagens 93 Gostos 5
Troféus totais: 19
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Level 4 Level 3 Level 2 Level 1 50 Posts 10 Posts First Post

E esta é a mensagem gerada sempre no "server log" do forum:


Zend_Db_Statement_Mysqli_Exception: Mysqli prepare error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') AND profile_user_id = user_id ORDER BY post_date DESC LIMIT 10' at line 3 - library/Zend/Db/Statement/Mysqli.php:77
Generated By: Conta Desconhecida, 8 minutos atrás

Da linha 66 a 77 nesse ficheiro tenho o seguinte:



public function _prepare($sql)
    {
        $mysqli = $this->_adapter->getConnection();

        $this->_stmt = $mysqli->prepare($sql);

        if ($this->_stmt === false || $mysqli->errno) {
            /**
             * @see Zend_Db_Statement_Mysqli_Exception
             */
            require_once 'Zend/Db/Statement/Mysqli/Exception.php';
            throw new Zend_Db_Statement_Mysqli_Exception("Mysqli prepare error: " . $mysqli->error, $mysqli->errno);
        }
    }
Offline

tuker 
Membro
Mensagens 51 Gostos 6
Troféus totais: 12
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 2 Level 1 50 Posts 10 Posts First Post Third year Anniversary

Boa Tarde,

Não percebi muito bem o erro, dá-te erro ao importar?
Offline

willypt 
Membro
Mensagens 93 Gostos 5
Troféus totais: 19
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Level 4 Level 3 Level 2 Level 1 50 Posts 10 Posts First Post

Boas.
Já foi resolvido. Era por culpa de um plugin. O erro surgia apenas aos utilizadores não registados. Ocasionalmente o site estava On, outras vezes apresentava a mensagem "DB error" algo assim.
CUmps!
Offline

AlexandrePaulo 
Membro
Mensagens 360 Gostos 42
Feedback +3

Troféus totais: 24
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 4 Level 3 Level 2 Level 1 100 Posts

<!-- Mysqli prepare error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')
            AND profile_user_id = user_id
         ORDER BY post_date DESC
         LIMIT 10' at line 3 -->

A frase SQL está com ") AND profile_user_id = user_id ORDER BY post_date DESC LIMIT 10"

Entre o ")" e o "AND" falta uma condição. Um qualquer bug no código está a criar mal a query...
Offline

willypt 
Membro
Mensagens 93 Gostos 5
Troféus totais: 19
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Level 4 Level 3 Level 2 Level 1 50 Posts 10 Posts First Post

Sim, era mesmo isso. Era problema de um plugin. Não entendi o que todas essas palavras significavam mas calculei que fosse de um plugin e tinha razão.
oBRIGADO! ;D