سؤال في الـ ASP مع قاعدة بيانات ؟

كل ما يهم مطور المواقع ... لغات برمجة المواقع .. سكربتات .. مناقشات ..
مغلق
عامر الخالدي
عضو جديد
مشاركات: 2
اشترك في: 20 سبتمبر 2005, 13:14
مكان: فلسطين

سؤال في الـ ASP مع قاعدة بيانات ؟

مشاركة بواسطة عامر الخالدي »

بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته .

سؤالي الى الاخوة الاعزاء هو في كيفية الوصول الجيد الى البيانات في قاعدة البيانات , من خلال الـ ASP .
لقد قمت بتصميم عدة ملفات ASP وربطها بقاعدة بيانات باستخدام برنامج
ASP Maker , ولقد جعلت الـ PassWord و UserName الخاص بكل موظف مختلف عن الموظفين الاخرين , حيث يأخذهما من قاعدة البيانات الموجودة

والمشكلة التي تواجهني هي عندما أدخل الـ PassWord و UserName الخاص بموظف معين فإنه يقوم بعرض جميع السجلات الخاصة بكافة الموظفين ,
المطلوب هو أن لا يظهر جميع السجلات وإنما السجل الخاص بالموظف المعني فقط

مع العلم أنني حاولت جاهداً التعديل على الملف tab2veiw.asp ولكن دون جدوى

وإليكم الملفات المرفقة .
وشكرا لكم على المساعدة .
مع كل الاحترام ......
asp4ever
عضو جديد
مشاركات: 40
اشترك في: 23 فبراير 2006, 16:24

جرب هذا

مشاركة بواسطة asp4ever »

log.asp
<html>
<body>
<center>
<table width="30%" cellspacing="0" cellpadding="2" border="1" >
<tr>
<th bgcolor = "yellow">name</th>
<th bgcolor = "yellow">age</th>
<th bgcolor = "yellow">address</th>
</tr>

<%
Dim conn
Dim rs
Set Conn = Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open(Server.Mappath("/webdata/it.mdb"))
set rs = Server.CreateObject("ADODB.recordset")
sql= "SELECT * FROM samer WHERE user = '" & Request.Form("name") & "'"
set RS = Conn.Execute(SQL)
DO While NOT RS.EOF
response.write("<td>" & rs.fields("name") & "</td>") & "<BR>"
response.write("<td>" & rs.fields("age") & "</td>") & "<BR>"
response.write("<td>" & rs.fields("address") & "</td>") & "<BR>"
RS.MoveNext
Loop

RS.Close
Set RS = nothing
Conn.Close
Set Conn = nothing
%></center>
</body>
</html>


-------------------
html form
<html>
<head>
<title>test</title>
</head>
<body bgcolor="white" text="black">

<form name="form" method="post" action="log.asp">
Name: <input type="text" name="name" >
<input type="submit" name="Submit" value="Submit">
</form>

</body>
</html>
عامر الخالدي
عضو جديد
مشاركات: 2
اشترك في: 20 سبتمبر 2005, 13:14
مكان: فلسطين

السلام عليكم

مشاركة بواسطة عامر الخالدي »

أخي الكريم asp4ever شكرا لك على ردك الجميل
ولكن الكود الخاص بالملفان log.asp و test.htm لم يعطي أي نتيجة
فهل تستطيع التعديل على الكود الذي أرسلته في المثال الخاص بي
وشكرا لك على جهودك المخلصة

أخوك عامر ....
asp4ever
عضو جديد
مشاركات: 40
اشترك في: 23 فبراير 2006, 16:24

هذا كود برنامج

مشاركة بواسطة asp4ever »

اخي الكريم هذا كود برنامج اي ان البرنامج هو الذي يمتبه وعندي اطلاعي عليه كان معقدا جدا
لذا سأعطيك الكود التالي كمثال وانت عدل عليه ...للعلم هذا الكود كتبته على note pade
يقوم هذا الكود بعرض معلومات الزائر عند ادخاله username
.. وانت اضف الباسورد عند قرائتك هذا الكود
اولا : انشئ قاعدة بيانات داخل فولدر اسمه webdata في فولدر wwwroot . اسم قاعدة البيانات it.mdb
ثانيا : ضع فيها الحقول التالية : user pass name age . ضع هذه الحقول حرفيا كما هي هنا .
واجعل اسم الجدول samer
ثالثا : عبأها بما تريد .

رابعا : صفحة ال html form
<html>
<head>
<title>test</title>
</head>
<body bgcolor="white" text="black">

<form name="form" method="post" action="log.asp">
Name: <input type="text" name="name" >
<br>
<input type="submit" name="Submit" value="Submit">
</form>

</body>
</html>

log.asp
<html>
<body>
<%
Dim conn
Dim rs
Set Conn = Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open(Server.Mappath("/webdata/it.mdb"))
set rs = Server.CreateObject("ADODB.recordset")
sql= "SELECT * FROM samer WHERE user = '" & Request.Form("name") & "'"
set RS = Conn.Execute(SQL)
do until rs.EOF
for each x in rs.Fields
if x.value <> " " then
Response.Write(x.value & "<br />")
end if
next
rs.MoveNext
loop
RS.Close
Set RS = nothing
Conn.Close
Set Conn = nothing
%>
</body>
</html>
يبدو هنا الكود بشكل معكوس بسبب الاتجاه ولكن عندما تضعه في ال NOTEPAD سيكون بشكله الطبيعي .
ارجو ان يكون هذا الكود قد افادك
يبقى عليك ان تحقق من ان ال USER موجود او غير موجود من خلال جملة IF تضعها في صفحة ال LOG.ASP . هذه اسهل طريقة .
ملاحظة : انا لا استخدم اداة ODBC datasource .
جرب هذه الطريقة وحتما ان شاء الله رايحة تزبط .
مغلق