2012-05-14 7 views
0
 <?php 
$id=$_REQUEST['id']; 
$sub=array(); 
$sub=$_REQUEST['sub']; 
$total=0; 
for($i=0;$i<count($sub); $i++) 
    { 
     $total=$total+$sub[$i]; 
    } 
$link=mysql_connect("localhost","root","") or die("Cannot Connect to the database!"); 

mysql_select_db("nps_exam",$link) or die ("Cannot select the database!"); 
$query= "UPDATE four SET 'sub[1]'='".$sub[0]."' , 'sub[2]'='".$sub[1]."' , 'sub[3]'='".$sub[2]."' , 'sub[4]'='".$sub[3]."' , 'sub[5]'='".$sub[4]."' , 'sub[6]'='".$sub[5]."' , 'sub[7]'='".$sub[6]."' , 'sub[8]'='".$sub[7]."' , 'sub[9]'='".$sub[8]."' , 'Music'='".$sub[9]."' , 'Arts'='".$sub[10]."' , 'total'='".$total."' WHERE Registration_no=='".$id."'"; 

     if(!mysql_query($query,$link)) 
     {die ("An unexpected error occured while saving the record, Please try again!");} 
     else 
    { 
     echo "Record updated successfully!";} 
?> 

Я новичок в php.While обновления записей из этого выше кода php. Я всегда получаю сообщение об ошибке сказав Произошла непредвиденная ошибка при сохранении записи, и я не могу получить мои данные updated..please кто поможет ..ошибка при обновлении таблицы

+0

заменить строку матрицы с 'фильеры («Ошибка при запросе: $ запрос»);' поэтому мы можем видеть, что запрос выглядит. – Jhong

+2

под [1] и под [2] и т. Д. Недопустимы имена столбцов. Если столбцы действительно названы так, вам придется процитировать их в обратных тактах: 'sub [1]' –

+0

вы имеете в виду 'sub [1]' .. если так, то я думаю, что я написал то же самое в своем коде –

ответ

1

ли это:

if(!mysql_query($query,$link)) { 
    die (mysql_error()); 
} else { 
    echo "Record updated successfully!"; 
} 

mysql_error() даст вам точное сообщение об ошибке - этот вопрос может только о быть что угодно ... ошибка связи проблема/синтаксис запроса/отсутствующие данные и т.д.

+0

спасибо за ваш ответ Я сделал именно то, что вы говорите, но я не мог узнать, что сообщение об ошибке было сказано как. У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с '' sub [1] '=' 2 ',' sub [2] '=' 2 ',' sub [3] '=' 56 ' , 'sub [4]' = '2', 'sub [5]' = '2', 'sub' в строке 1 –

+0

Являются ли столбцы в вашей таблице подменю 'sub [1]' to 'sub [10]' ? – andrewsi

+0

@bishubohara, каковы имена столбцов? Ошибка правильная - вы не можете использовать квадратные скобки в качестве имени столбца, не избегая их с помощью обратных кавычек. Не одинарные кавычки – ManseUK

2

Вам нужно изменить ИНЕКЕ из:

WHERE Registration_no=='".$id."'  

к

WHERE Registration_no='".$id."' 
+0

+1 это вполне может быть актуальной проблемой !!! – ManseUK

+0

Также стоит получить код для вывода фактического SQL и ввода его непосредственно в базу данных. Если ничего другого, он скажет вам, связана ли проблема с SQL или с подключением к базе данных. – andrewsi

+0

Да, я сделал это уже, но результатов пока нет. –

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