Здравствуйте, Мне поставлена задача при выборе из списка какого-то имени, получить его точный идентифицирующий номер из таблицы и потом этот номер записать в другую таблицу. При проверки правильности работы запроса, а именно, вывода результата запроса на экран, ничего не выводится. Получается, что запрос работает неправильно. Но я не могу понять где ошибка. Помогите, пожалуйста, решить эту проблему. Заранее благодарю. Вот код данного скрипта: Код (Text): <html> <head> <title>Определение связей</title> </head> <body BGCOLOR="DarkSalmon"> <div align="center"><h1>Определение связей в Базе знаний</h1> <div align="left"> <form action=file3.php method=POST> <input type="submit" name="back" value="Back"> </form> <form action=index_first.php method=POST> <input type="submit" name="home" value="Home"> </form> </div> <form action=Relations.php method=POST> <? include ("config.php"); ?> <p>Выберите фрагмент знаний(дочерный элемент):                                                Выберите объект знаний:<BR> <?//Relations $sql6=@mysql_query("select Name from FRS"); For($f1=1;$f1<mysql_num_rows($sql6)+1;$f1++) { $tok=mysql_fetch_array($sql6); $tik[$f1]=$tok['Name']; } ?> <select name="fragmentznan" size=4> <? For($f1=1;$f1<mysql_num_rows($sql6)+1;$f1++) { echo "<option value=$f1>$tik[$f1] </option>"; } ?> </select> <? $sql7=@mysql_query("select Name from KOS"); For($k3=1;$k3<mysql_num_rows($sql7)+1;$k3++) { $tuk=mysql_fetch_array($sql7); $tup[$k3]=$tuk['Name']; } ?> <select name="obyektznan" size=4> <? For($k3=1;$k3<mysql_num_rows($sql7)+1;$k3++) { echo "<option value=$k3>$tup[$k3] </option>"; } ?> </select></p> <p>Выберите объект знаний(дочерный элемент):<BR> <? $sql8=@mysql_query("select Name from KOS"); For($k4=1;$k4<mysql_num_rows($sql8)+1;$k4++) { $tuki=mysql_fetch_array($sql8); $tupi[$k4]=$tuki['Name']; } ?> <select name="obyektznan2" size=4> <? For($k4=1;$k4<mysql_num_rows($sql8)+1;$k4++) { echo "<option value=$k4>$tupi[$k4] </option>"; } ?> </select></p> <p>Выберите тип дочернего элемента(1-фрагмент,2-объект знаний):<BR> <select name="ch2"> <option value=1>1</option> <option value=2>2</option> </select><p> <input type="submit" name="send3" value="Send"> <input type="submit" name="del3" value="Delete"> <? if (!empty($_POST['send3'])) { $znaniya=$obyektznan; $query=mysql_query("SELECT NKO FROM KOS WHERE (Name=\"$znaniya\")"); //$result=mysql_query($query); $id=mysql_fetch_array($query); printf("id=",$id); if ($ch2=="1") { $fragmzn=$_GET['$fragmentznan']; $result1=mysql_query("SELECT NFR FROM FRS WHERE (Name=\"$fragmzn\") "); $id1=mysql_fetch_array($result1);printf("id1=",$id1); $sql=@mysql_query("INSERT INTO Relations (NKO,CTYPE,CID) VALUES ('$id','$ch2','$id1') "); } //else{ if ($ch2=="2") { $obyektznaniy=$obyektznan2; $result2=mysql_query("SELECT NKO FROM KOS WHERE (Name=\"$obyektznaniy\")"); $id2=mysql_fetch_array($result2); $sql2=@mysql_query("INSERT INTO Relations (NKO,CTYPE,CID) VALUES ('$id','$ch2','$id2') "); } // } //echo "<font color=red>Ваша связь добавлена!</font><br><br>\n"; }; if (!empty($_POST['del3'])) { $znaniya=$obyektznan; if ($ch2=="1") { $fragmzn=$fragmentznan; $sql7=@mysql_query("DELETE FROM Relations WHERE (CTYPE='$ch2'AND NKO='$znaniya'AND CID='$fragmzn')LIMIT 1"); $sqlalter7=@mysql_query("ALTER TABLE Relations AUTO_INCREMENT=0"); } if ($ch2=="2") { $obyektznaniy=$obyektznan2; $sql8=@mysql_query("DELETE FROM Relations WHERE (CTYPE='$ch2'AND NKO='$znaniya'AND CID='$obyektznaniy') LIMIT 1"); $sqlalter8=@mysql_query("ALTER TABLE Relations AUTO_INCREMENT=0"); } echo "<font color=red>Ваша связь удалена!</font><br><br>\n"; } ?> </div></html></body></form>
Выборка: [sql]SELECT id FROM table WHERE name='имя';[/sql] Запись: [sql]INSERT INTO table2 (поле_для_записи) VALUES ('полученый_id');[/sql]
В данном коде, у меня роль id играет столбец NKO в таблице KOS и NFR в таблице FRS. $fragmzn и $obyektznaniy это выбранные пользователем фрагменты или объекты знаний из выпадающего списка. Может быть проблемы в получении результата запроса? Я пробовала другие варианты получения результата, к сожалению, также не работает.