• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Jsp + Sql

  • Автор темы [ds]Sidmaker
  • Дата начала
Статус
Закрыто для дальнейших ответов.
D

[ds]Sidmaker

Вообщем ситуация такова ... есть register.jps с формой для регистрации она сабмитит данные на другую thanks.jsp которая в свою очередь говорит спасибо за регистрацию и собирает данные с register.jsp затем tnaks.jsp ложит собранные данные в базу данных вот код этого :
<%
try {
String driverName = "sun.jdbc.odbc.JdbcOdbcDriver"; Class.forName(driverName);
} catch (ClassNotFoundException e) {
e.getMessage();
}
try {
Connection connection = DriverManager.getConnection("jdbc:mysql:mydb","root","123");
Statement st = connection.createStatement();
st.executeUpdate("Insert into user_table (Login,Password,Email,Sex,Details) values(" + "1" + "," + "1" + "," + "1" + "," + "1" + "," + "1" + ")");
}
catch (SQLException ex) {
ex.getMessage();
}
%>
и даже с таким простым примером в базе ничего не появляется хотя jsp работает прекрастно ... если создать этот просто запрос в Front-Page то там все прекрастно работает ...
 
V

VadZappa

Привет, мне кажется, что есть проблема с выбором драйвера:
ты пишешь:
1. String driverName = "sun.jdbc.odbc.JdbcOdbcDriver";
А стоило бы использовать драйвера под mysql:
String driverName = "com.mysql.jdbc.Driver";
2. И ещё - ты не совсем правильно сформировал URL-запрос здесь:
Connection connection = DriverManager.getConnection("jdbc:mysql:mydb","root","123");
А стоило бы:
Connection connection = DriverManager.getConnection("jdbc:mysql://<имя_сервака_с_базой>/<собственно_имя_базы>","root","123");
И вообще совет - просмотри в дебаг режиме, что у тебя где null
И ещё, с этими ODBC драйверами ты ставишь под сомнение предположение о том, что твоя прилага сможет перенестись на другие платформы. Проще скачать jar'ку mysql connector и забыть навсегда :)
Удачи!
 
1

13-

И ещё я бы добавил :
Не стоит jsp использовать для соеденения с базой ... обычно подобное делает сервлет(т.е Передаёшь параметры на сервлет а он уже сохранят в базе и возвращает ошибки и тд...)
 
S

Shurup


ЫыЫыЫ...
думаю стоит ввести смертную казнь за написание sql-скриптов в jsp'шках

goto:

нормально когда на jsp нет ни строчки скриплета

читай Struts
или о любой иной реализации Model View Controller

+ про библиотеки тегов типа jstl
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!