Рейтинг:
1
Wendelius
В принципе, есть два варианта для первичного ключа violaiton, либо запись уже существует, либо вы вызываете insert дважды (что в основном одно и то же).
Основываясь на вашем коде, это выглядит так, как будто вы извлекаете значение if Id после того, как вставили строку в clgmaster. Однако select не ограничивает никаких строк, поэтому вполне возможно, что вы действительно извлекаете случайную строку из clgmaster и используете этот идентификатор строк при вставке в курс. Поскольку вы только что вставили строку в clgmaster, необходимо ли вообще извлекать эту строку. Почему бы не использовать то же значение при вставке в курс, которое использовалось при вставке в clgmaster.
Member 10011989
спасибо Мистер венделиус ,
я попробовал это сделать, но все равно получаю ту же ошибку. я удалил всю запись и выполнил код bt, все еще получая ту же ошибку. мне нужно вставить то же самое значение clgid в таблицу курса . пожалуйста, предложите какую-нибудь идею. я запутался, что происходит не так с моим кодом, если вы найдете какой-нибудь плз, укажите мне
Wendelius
При ближайшем рассмотрении это выглядит так, как будто вы выполняете вставку в clgmaster дважды.
Вместо
$result1 = mysql_query($query);//выполнение запроса курса
пробовать
$result1 = mysql_query($query1);//выполнение запроса курса
Кроме того, если идея состоит в том, чтобы использовать общий идентификатор для clgmaster и курса, рассмотрите возможность упрощения кода до
$запрос="вставить в clgmaster (ClgId,ClgName,ClgAddrs,FeeAmt,CntNo,электронная почта,инвалидов) значения (с$ID,'$clgnm','$addrs',$сборы$cntno,'$Полс','$фрд')";
$result = mysql_query($query);//Excecuting clg query
echo $result."<br>";
echo "helllo query <br>";
if ($result)
{
Эхо "<br>Вы успешно зарегистрировали эту запись!";
}
// **** вставка данных в таблицу курса ****
$query1="вставить в курс (ClgId,CourseName) значения ($id,$course)";
echo $query1;
$result1 = mysql_query($query1);//выполнение запроса курса
Эхо $результат1;
if(!$result1)
{
die(" <br> Mysql erro".mysql_error());
}
еще {
Эхо " <br> запись успешно вставлена в курс";
}
Member 10011989
thhanks за то, что указал на мою глупую ошибку около $query1. та же проблема возникает и после изменений, которые вы предлагаете.
.когда я изменил свой запрос, вставив ручной clgid, то обнаружил странную ошибку, то есть неизвестный столбец " BSc " в "списке полей". где BSc-это имя моего имени курса. :(
Wendelius
Если
$query1="вставить в курс (ClgId,CourseName) значения ($id,$course)";
быть
$query1="вставить в курс (ClgId,CourseName) значения ($id,'$course')";
Member 10011989
спасибо, но я сделал это сам..
спасибо за Вашу поддержку..я очень благодарен вам
Wendelius
Не могли бы вы опубликовать полный код и еще раз объяснить, какая проблема у вас сейчас есть.
Member 10011989
да уж точно. я опубликовал свое решение