2015-05-20 5 views
-3

Я получил эту ошибку, когда я хочу, чтобы нажать на детали:Ошибка синтаксиса SQL запросов

У вас есть ошибка в вашем SQL синтаксиса; проверьте, что соответствует вашей версии сервера MySQL для правильного синтаксиса для использования около 'и sq.testid = 5), 0) в качестве om от ученика как s, тест как t, субъект в качестве суб, студента на линии 1

$result=executeQuery("select s.stdname,s.nume_student,s.prenume_student, 
     t.testname, t.testdesc,sub.subname,sub.subdesc,sub.an, 
     DATE_FORMAT(st.starttime,'%d %M %Y ') as stime, 
     DATE_FORMAT(st.starttime,' %H:%i:%s') as stimes, 
     TIMEDIFF(st.endtime,st.starttime) as dur, 
     (select sum(marks) 
       from question 
       where testid=".$_REQUEST['details'].") as tm, 
     IFNULL((select sum(q.marks) 
       from studentquestion as sq, question as q 
       where sq.testid=q.testid and sq.qnid=q.qnid 
        and sq.answered='answered' and sq.stdanswer=q.correctanswer 
        and sq.stdid=".$_REQUEST['stdid']." 
        and sq.testid=".$_REQUEST['details']."),0) as om 
      from student as s,test as t, subject as sub,studenttest as st 
       where s.stdid=st.stdid and st.testid=t.testid 
        and t.subid=sub.subid and st.stdid=".$_REQUEST['stdid']." 
        and st.testid=".$_REQUEST['details'].";") ; 

Я знаю, что проблема sq.stdid=".$_REQUEST['stdid']." и st.stdid=".$_REQUEST['stdid'].", но я понятия не имею, как его решить.

+1

Всякий раз, когда вы редактируете..пожалуйста, попробуйте удалить прокрутку ... это очень раздражает –

+0

SQL-инъекция пятнистая. Неправильно ')' пятнистый. Плохой дизайн стола пятнистый :( – DanFromGermany

+0

Не связано с вашим вопросом, но если вы используете '$ _REQUEST', вы должны посмотреть здесь: http://stackoverflow.com/questions/2142497/whats-wrong-with-using- запрос – Lupin

ответ

0

Типичным способом для отладки было бы распечатать сгенерированный запрос.

Из того, что я вижу (и с сообщением об ошибке) кажется Täht здесь:

nd sq.testid=".$_REQUEST['details']."),0) as om 

закрытие ) перед тем ,0) кажется неправильным.

Смежные вопросы