За последние 24 часа нас посетили 18439 программистов и 1630 роботов. Сейчас ищут 1813 программистов ...

Исправить непонятную ошибку

Тема в разделе "PHP и базы данных", создана пользователем heavytresh, 21 май 2014.

  1. heavytresh

    heavytresh Новичок

    С нами с:
    21 май 2014
    Сообщения:
    11
    Симпатии:
    0
    Вот код, который выводит в браузер таблицу и поля для внесения данных в таблицу.
    Код (Text):
    1. <html>
    2. <?
    3. $connection=odbc_connect('DB', 'airman','4593');
    4. if($connection==FALSE)
    5. die('Помилка при підключенні');
    6. if (isset($_REQUEST['act']) && $_REQUEST['act'] == 'ins') {
    7.     $query = "INSERT INTO bla
    8. VALUES('{$_REQUEST['id_klient']}','{$_REQUEST['fio']}');";
    9.     if (@odbc_exec($connection, $query)) {
    10.         header("Location:{$_SERVER['PHP_SELF']}");
    11.     } else
    12.         echo 'Помилка при внесенні даних.<br>' . odbc_errormsg($connection) .
    13. '<br>' . $_REQUEST['hiredate'];
    14. }
    15. ?>
    16.  
    17. <?
    18. $sql=odbc_exec($connection,'SELECT * from bla');
    19. $kol_num=odbc_num_fields($sql);
    20. echo "<table border=1 align=center><thead><tr>";
    21. for($i=1;$i<=$kol_num;$i++)
    22. {echo "<th>" . odbc_field_name($sql,$i) . "</th>";}                                  
    23.            
    24. echo "</tr></thead>";
    25. echo "<tbody><tr>";
    26. do {
    27. echo "<tr>";    
    28. for($i=1;$i<=$kol_num;$i++) {echo "<td>"; if(odbc_result($sql,$i)==NULL) echo "NULL";
    29. else echo odbc_result($sql,$i); echo "</td>";}
    30. $next=odbc_fetch_row($sql);
    31. echo "<tr>";
    32. } while($next==true);
    33. echo "</tr></table>";
    34. ?>
    35. <body>
    36. <form action="<?=$_SERVER['PHP_SELF'] ?>" >
    37. <input type="hidden" name="act" value="ins">
    38. id_klient:<input type="number" name="id_klient" />
    39. fio:<input type="text" name="fio" />
    40.  
    41. <input type="submit"  value="Додати" />
    42. </form>
    43. </body>
    44. </html>
    Я пишу в поле id_klient цифру, в поле fio какие-то буквы, но браузер пишет ошибку: [Microsoft][ODBC driver for Oracle][Oracle]ORA-00911: неверный символ
     
  2. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Не браузер, а БД ругается. Выводи на страницу SQL-запрос и пробуй скормить его базе вручную.

    Вероятная причина - накосячил с кавычками где-то.
    З.Ы. А почему такая экзотика в плане БД?