2015-02-04 2 views
1

Привет, пользователей StackExchange, Мне нужно помочь в моем коде, потому что это смешно, и я не знаю, что делать.Команда MYSQL в коде JSP

У меня есть таблица SQL «members», там зарегистрировано более 1000 пользователей.

Im делает веб-приложение с логином и интерфейсом.

Проблема? После входа в мое веб-приложение он покажет мне, что другие зарегистрированные данные пользователей. (screenshot n.1) = http://s3.postimg.org/t74zj5pyr/V_st_i_ek.jpg

BUT, Я хочу видеть только данные из зарегистрированных пользователей с сеансом. Как это изображение -> (таблица базы данных с помощью одного зарегестрирована пользователя) === работает нормально :-D --- (скриншот ст.н.2) = http://s30.postimg.org/nyz2jqum9/V_st_i_ek.jpg

Итак, наконец, есть JSP код:

try 
         { 
         connection = DriverManager.getConnection(connectionUrl+dbName, userId, password); 
         statement=connection.createStatement(); 

         //String id_ = request.getParameter("id"); 
         //String id_ = session.getSessionContext().equals("id"); 
         //String searchPhone = request.getParameter("id"); 

         String sql ="SELECT * FROM members WHERE id"; 

         resultSet = statement.executeQuery(sql); 
         while(resultSet.next()) 
         { 

Мне нужно что-то вроде этого

Строка activeUser = session. «получить активное соединение как пользователь XXXX»

Строка sql = "SELECT * FROM members WHERE id = '" + activeUser + "'";

Контакт: [email protected] Skype: l2jpsinfo

+1

Знаете ли вы, что вставка кода sql и db в представлении (JSP) является плохой практикой? –

+0

Нет, я не знаю. Im новое в JSP и Im пытается сделать веб-приложение. Что не так с командой SQL в jsp? Как защитить свой код? –

+0

Сделайте код, доступ к базе данных сервлетом, а не JSP. См. Информационную страницу тега 'servlets' для некоторых основ сервлетов. – developerwjk

ответ

2

Попробуйте этот код. Но, как я уже упоминал выше, использование таких вещей в JSP - это плохая практика.

String sql ="SELECT * FROM members WHERE id=?"; 
PreparedStatement statement = connection.prepareStatement(sql); 
statement.setString(1, "id value"); 
ResultSet set = statement.executeQuery(); 
+0

Ok я скопировать мой код и перезапустить приложение .: http://s11.postimg.org/qely9s5df/V_st_i_ek.jpg EDIT: он должен быть Welcome Back «имя пользователя» –

+0

заменить «значение ИД» со значением идентификатора пользователя или имени пользователя. Я не знаю, какое id-поле содержится в вашей БД. как я понимаю, вам нужно установить там объект activeUser. например, 'statement.setString (1, activeUser);' –

+0

Да, мне нужно создать нечто такое, как вы написали «activeUser». Но как создать скрипт для проверки пользователя из сеанса? Я использовал этот базовый учебник для создания регистрации и входа в систему: http://javaknowledge.info/login-and-registration-example-in-jsp-with-session/ –

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