السلام عليكم
أريد أن أعمل مثل مافي هذا الموقع http://www.roseindia.net/mysql/loginauthentication.shtml
باستخدام برنامج netbeans
ولكن سأستخدام Access بدلاً من MySQL لإنشاء جدول المستخدمين
فياليت شرح مافي الموقع أعلاه
وشكرا...
السلام عليكم
أريد أن أعمل مثل مافي هذا الموقع http://www.roseindia.net/mysql/loginauthentication.shtml
باستخدام برنامج netbeans
ولكن سأستخدام Access بدلاً من MySQL لإنشاء جدول المستخدمين
فياليت شرح مافي الموقع أعلاه
وشكرا...
هل تعرف كيف إنشاء تطبيق ويب أصلا في netbeans ؟
إن كنت لا تعرف:
أعرف نعم
لكن أريد أن أعرف خطوات إنشاء مثل هذه الصفحة
وشكرا لك
ما الفرق إذن؟
لا يوجد أي فرق ... فالمثال يحتوي على servlet و JSP page و فقط!
إن كانت لديك مشكله بعينها يرجى عرضها ... و إلا فلا يوجد معني لهذا السؤال..
هذا الموقع يقدم Tutorials في عدة مواضيع منها tomcat ,JSP,servelet
http://courses.cores...urse-Materials/
وراجع قسم المواضيع المميزة
تم تعديل هذه المشاركة بواسطة EMNALI في 14 نوفمبر 2010 في 11:24
وَعَبْدٌ قَدْ يَنامُ عَلَى حَرِيرٍ ××× وَذُو نَسَبٍ مَفَارِشُهُ التُّرَابُ
عملت صفحة تسجيل الدخول وعملت الربط jdbc لكن عندما أضغط على login يظهر خطأ
أرفقت لكم ماقمت بعمله ياليت تصححون لي الخطأ
ما هي رسالة الخطأ؟
آآآسف على التأخير بسبب ذهابي للحج
هذه رسالة الخطأ التي تظهر عن الضغط على sign-In

اعتقد ان دا خطأ فى العنوان
هل انت كاتب اسم المشروع ثم اسم صفحه الـ servelt ؟؟؟؟
هذا الخطاء يدل على انك اخطاءت في ال web.xml
تاكد ان ال servlet صحيح
<servlet>
<servlet-name>LoginAuthentication</servlet-name>
<servlet-class>LoginAuthentication</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginAuthentication</servlet-name>
<url-pattern>/LoginAuthentication</url-pattern>
</servlet-mapping>
يأخوان شاكر لكم على روح التعاون منكم
أنا سأرفق لكم المشروع الذي قمت بعمله ياليت تشغولنه وتشوفون ايش الأخطاء
وتراه يختلف عن الملف السابق
وهذا ملف الأكسس
وقبل التشغيل أعملو الربط
تم تعديل هذه المشاركة بواسطة عشير النشامى في 20 نوفمبر 2010 في 10:34
بسرعة الخطاء الاول الذي اراه انك يجب تصحح ال servlrt-class في ال web.xml بحيث تصبح كالاتي
<servlet-class>com.ensode.nbbook.controller.LoginAuthentication</servlet-class>
بدل من
<servlet-class>LoginAuthentication</servlet-class>
قم بالتصحيح و اعد المحاولة و اخبرنا بالنتيجة
قمت بالتصحيح وظهر نفس الخطأ
هل من حل آخر؟؟؟؟؟؟؟
...UP...
إن شاء الله .... سوف أقوم بالنظر في سؤالك هذه الليله ... ارجو تذكرتي فقط
عدل الملف web.xml ليصبح كالتالى
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>LoginAuthentication</servlet-name>
<servlet-class>com.ensode.nbbook.controller.LoginAuthentication</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginAuthentication</servlet-name>
<url-pattern>/LoginAuthentication</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>AuthenticLogin.jsp</welcome-file>
</welcome-file-list>
</web-app>وعدل الفئة LoginAuthentication لتصبح كالتالى
package com.ensode.nbbook.controller;
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class LoginAuthentication extends HttpServlet{
private ServletConfig config;
@Override
public void init(ServletConfig config)
throws ServletException{
this.config=config;
}
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException,IOException{
PrintWriter out = response.getWriter();
response.setContentType("text/html");
String connectionURL = "jdbc:odbc:login";
Connection connection=null;
ResultSet rs;
String username="";
String passwrd="";
String u_username = request.getParameter("user");
String u_password = request.getParameter("pass");
try {
// Load the database driver
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// Get a Connection to the database
connection = DriverManager.getConnection(connectionURL, "root", "root");
//Add the data into the database
String sql = "select * from log where userName = '"+ u_username +"' ";
Statement s = connection.createStatement();
s.executeQuery (sql);
rs = s.getResultSet();
if (rs.next ()){
username = rs.getString("userName");
passwrd = rs.getString("password");
}
if(username.equals(u_username) && passwrd.equals(u_password)){
out.println("WELCOME " + username);
}
else{
out.println("Please enter correct username and password");
out.println("<a href='AuthenticLogin.jsp'><br>Login again</a>");
}
rs.close ();
s.close ();
}catch(Exception e){
System.out.println("Exception is ;"+e);
}
}
}وعدل مسار السيرفلت فى الفورمة فى صفحة ال jsp ليصح كالتالى
<%--
Document : AuthenticLogin
Created on : 14/11/2010, 03:21:56 ?
Author : F
--%>
<%@ page language="java" %>
<html>
<head>
<title>Login Page</title>
<script type="" language = "Javascript">
function Validate(){
var user=document.frm.user
var pass=document.frm.pass
if ((user.value==null)||(user.value=="")){
alert("Please Enter user name")
user.focus()
return false
}
if ((pass.value==null)||(pass.value=="")){
alert("Please Enter password")
pass.focus()
return false
}
return true
}
</script>
</head>
<body>
<h1>Login
<br>
</h1>
<form name="frm" action="LoginAuthentication" method="Post" onSubmit="return Validate()" >
Name: <input type="text" name="user" value=""/><br>
Password:<input type="password" name="pass" value=""/><br>
<br> <input type="submit" value="Sign-In" />
<input type="reset" value="Reset" />
</form>
</body>
</html>بالتوفيق
تم تعديل هذه المشاركة بواسطة Oracle_Java في 23 نوفمبر 2010 في 16:08
﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾
الأنفال ۳۳
في البداية أشكر جميع الأعضاء الذين حاولوا لمساعدتي
وأخص بالشكر Oracle_Java
الذي مهما كتبت فلن أوفيك حقك
حروفي لو سطرتها لشكرك لن تفيكـ ..
لك يعود الفضل بعد الله في مساعدتي على هذا المشروع
بارك الله فيك وفي ما اعطاك ونفع بعملك الجميع وجعله خالص لوجه الله
تقبل فائق أحترامي وتقديري
عشير النشامى
اهلا اخى النشامى
String sql = "select * from log where userName = '"+ u_username +"' ";
هذا الاستعلام يستقبل قيمة لاسم المستخدم userName فيبحث عنها حتى اذا وجدها يقوم بحفظها فى المتغير userName
ويحفظ كلمة السر فى نفس السجل فى المتغير password
والتى نجرى عليها المقارنة بعد ذلك للتأكد من انها صحيحة
طريقتك الاولى كانت خاطئة
String sql = "select * from log";
while(rs.next()){
userName = rs.getString("userName");
password = rs.getString("password");
}اتعرف ماذا تعنى هذه الطريقة
هى تقوم باسترجاع كل السجلات من الجدول
وتحفظ القيمة فى المتغيرين userName , password
ثم تأتى فى السجل التالى فتجد قيمتين اخرتين فتقوم باستبدال السابقتين بهما
وبهذا فعند نهاية تنفيذ هذه الفقرة سيكون لديك اخر اسم مستخدم وكلمة مرور فى الجدول وهذا خطأ
لانه ربما يكون اسم المستخدم الذى يريد تسجيل الدخول فى السجل الثانى مثلا
اى انه موجود فعلا ومن حقه الدخول
ولكن عند التأكد من اسم المستخدم وكلمة المرور ستكون النتيجة خاطئة
لهذا قمت بالتعديل عليه
بالتوفيق
﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾
الأنفال ۳۳
يأخوان هل بالإمكان عندما أضغط على زر sign-in وكان اسم المستخدم وكلمة المرور
صحيحتان إنه يستدعي فورم آخر
طبعا
كيف؟؟
مثلاً لدي فورم اسمه fmm.jsp
new RequestDispatcher(request, response).forward("newJsp.jsp");OR
response.sendRedirect("newJsp.jsp");شكراً نجح الربط
طيب أنا أريد أن يظهر لي اسم المستخدم الي أدخلته
إذا ضغطت على sign-in يظهر لي الفورم كامل وفي الأول اسم المستخدم الي أدخلته
(مثل طريقة المنتديات)
جربت هذا الكود
request.getParameter("username")تكون النتيجة null
في الصفحه الأولي إستخدم:
request.getSession().setAttribute("key", "value");في الصفحه الثانيه ك
request.getSession().getAttribute("key");هويدي
الحمدلله الأمور كلها ضبطت
شاكر ومقدر لك على روح التعاون
وأسأل الله أن يجعل ذالك في ميزان حسناتك
تحياتي لك...
تم تعديل هذه المشاركة بواسطة عشير النشامى في 2 ديسمبر 2010 في 10:40
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…