الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف أدرج صورة في أحد حقول الآكسس؟

مغلق
بدأه كوكب في 17 ديسمبر 2002 · 10 رد · 1,173 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

كيف أدرج صورة في أحد حقول الآكسس ..

أنا عندي اسم الكتاب ونبذة عنه .. وصورة غلاف الكتاب ..

أدرجتها من insert ==== object

creat new file

وبعدين اخترت الصورة من الجهاز طبعا

وطلعت لي في القاعدة مكتوب كلمة (حزمة)

لكن لما ربطتها بالموقع ( بلغة asp) طلعت لي علامة استفهام

لو عندكم حل؟؟

وجزاكم الله ألف خير

وعلى الخير نلتقي

والسلام

#2

إذا كنت تخزن الصور في قاعدة البيانات نفسها فيمكنك عرضها في الإنترنت عن طريق صفحات ASP من خلال الأمر التالي

Set objConn = Server.CreateObject("ADODB.Connection")

Set objRs = Server.CreateObject("ADODB.Recordset")



strSQL = "SELECT  [ImageData] FROM  [Images] "    

objRs.Open strSQL, objConn, 3, 3



do while not objRs.EOF 

	Response.BinaryWrite objRs(0)

                objRs.movenext

loop

أو كوداً قريباً من ذلك المهم في الكود الماضي بالطبع هو استخدام الأمر Response.BinaryWrite لعرض الصورة المخزنة في قاعدة البيانات

آمل مستقبلاً أن تطرح مثل هذه الأسئلة في منتدى تصميم

صفحات الويب فهم أقدر على مساعدتك في مثل هذه المشاكل لأن مشكلتك على الإنترنت

#3

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

الأخ أبو مجاهد :

أولا جزاك الله ألف خير...

أنا أخزن الصورة في قاعدة البيانات ..

لكن عندي أسئلة ..

واعذرني هذا جديد علي تماما

Set objConn = Server.CreateObject("ADODB.Connection")

Set objRs = Server.CreateObject("ADODB.Recordset")



strSQL = "SELECT  [ImageData] FROM  [Images] "    

objRs.Open strSQL, objConn, 3, 3



do while not objRs.EOF 

	Response.BinaryWrite objRs(0)

                objRs.movenext

loop

وقف عندي الكود على هذا السطر

objRs.Open strSQL, objConn, 3, 3

لو ممكن تفسر لي السطر هذا

أنا اللي فهمته

strSQL اسم الجدول في قاعدة البيانات bookSQL

, objConn اسم الحقل .. objpict

هل أنا مخطئة؟

وعلى الخير نلتقي

والسلام

#4

أختي الكريمة

ImageData هو اسم الحقل الذي يحتوي على الصورة

Images اسم الجدول

على كل إذا كان ممكن إرقاق قاعدة البيانات فهذا جيد وسوف أقوم بكتابة الكود المطلوب كاملاً

تحياتي

#5

أختي الكريم

السلام عليكم وبعد

فهمت من كلامك أنك تريدين وضع الصور في قاعدة البيانات مع إمكانية الحاجة إلى تحديثها OnLine ولذلك أرفقت لك ملفاً يحتوي على سكربت معرض صور Gallery وهو يتبع نفس الفكرة التي شرحت لك

لكن يجب التنبه إلى أنه يجب تخزين الصور عن طريق السكربت وليس عن طريق إدراج في الأكسس حتى يتم تخزين الصور على شكل بيانات ثنائية Binary

بالطبع يجتاج السكربت لتشغيله إلى PWS على ويندوز98 أو IIS على ويندوز2000 أو إكس بي

تحياتي الطيبة لك

galley.zip

#6

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

الآخ الكريم أبو هاجر:

أعتذر إن كنت أتأخر في الرد ولكنني أجرب ...

أنا جربت على هذا الاعتبار

ImageData هو اسم الحقل الذي يحتوي على الصورة

Images اسم الجدول

ولكن توقف الموقع المجاني .. ولم أستطع مشاهدة النتيجة ..

أنا الآن أجرب الملف المرفق .. وسأخبرك بالنتيجة .. بمجرد تجربته

جزاك الله ألف خير ..

وعلى الخير نلتقي

والسلام

#7

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

الأخ الكريم

جزاك الله ألف خير على الموسوعة في الملف

أنا قاعدة بياناتي أصغر من كذا

عبارة عن ثلاثة حقول فقط ..

اسم الكتاب subject

نبذة عن الكتاب body

صورة الكتاب pict

اسم قاعدة البيانات Project

اسم الجدول book

عندي بالضبط صفحتان فقط ..

الصفحة الأولى : bookshow

وفيها استعراض الكتب جميعها ..ولا توجد هنا أي مشكلة

الصفحة الثانية : استعراض كل كتاب على حده ..

والكود هو :

<meta http-equiv="Content-Language" content="ar-qa">

<%@ Language=VBScript CodePage = "1256"%>



<html dir=rtl>



<!--#include file="pageheader.txt" -->



<!--#include file="connection.txt" -->



<%

field=request.querystring("field")

id=request.querystring("id")



selectSQL="select * from "&field&" where id="&id

set rs=ADO.execute(selectSQL)

%>





</PRE></CODE></DIV>

<p align="center"><font face="Simplified Arabic" size="5" color="#C11111"><%response.write rs("subject")%></font><p><font face="Simplified Arabic" size="3"><%response.write rs("body")%></font></p>



<%ADO.close%>

مع ملاحظة أن ملف connection.txt

عبارة عن التالي :

<%



'أوامر فتح قاعدة البيانات



Dim ConnectionString

Dim ADO



ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & Server.MapPath("..rootdbproject.mdb")

Set ADO=Server.CreateObject("ADODB.Connection")

ADO.ConnectionString =ConnectionString

ADO.Open



%>

لكنه لا يستعرض الصورة ..

أنا أضفت الكود الإضافات التي أخبرتني بها لكن توقف الكود لم يعمل ..

أتمنى أن أكون شرحت المشكلة بتفصيل أكثر توضيحا ..

مع العلم أن الصور لن تتغير .. ولن يتم إضافة كتب جديدة إلى الموقع مرة أخرى .. أي أن المعلومات لن يتم تحديثها ..

وجزاك الله ألف خير

وعلى الخير نلتقي

والسلام

#8

الأخت كوكب

هناك ثلاث قضايا أود أن أقولها هنا

1- بالنسبة للمثال الذي زودتك به يمكن اختصار عدد صفحاته إلى صفحتين أو ثلاث فقط عن طريق تجميع الأكواد واستخدام If Then وهذه مسألة سهلة للغاية

2- بالنسبة للكود الذي كتبت فهو لا يحتوي على أي أمر لعرض الصورة بل كل ما فيه هو عرض الموضوع subject و نبذة عن الكتاب body وقد قلت:

اقتباس
الصفحة الأولى : bookshow

وفيها استعراض الكتب جميعها ..ولا توجد هنا أي مشكلة

فهل فعلاً يمكنك عرض الصور في الصفحة الأولى ؟

3- أهم شيء في مشاركتي هذه هو أن طريقة حفظ الصور في قاعدة بيانات طريقة غير سليمة ومن خلال تجربتي فإن ذلك تسبب في بط عرض الصور بشكل كبير كما أنني قرأت في عدد من المواقع الأجنبية التحذير من هذه الطريقة

إذن ما هو البديل ؟

البديل الصحيح هو وضع الصور في الموقع على مجلد فرعي خاص بها وتخزين اسم الصورة في حقل نص في قاعدة البيانات بحث يتم عرض الصورة كما يتم عرض أي صورة في صفحة الإنترنت بعد أخذ اسمها من قاعدة البيانات

وقد أرفقت لك مثالاً يوضح الفكرة أرجو أن تجدي فيه مايفيد

galleryv2.zip

#9

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

عفوا أخي الكريم ..

الصورة مطلوب وضعها في صفحة body عند استعراض كل كتاب على حده..

أنا باجرب الطريقة التي ذكرتها الآن إن شاء الله

وجزاك الله ألف خير

وعلى الخير نلتقي

والسلام

#10

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

الأخ الكريم أبو هاجر :

جزاك الله ألف خير ..

أصبح مثل ماقلت .. وضع الصور في مجلد خاص .. وجعلها بأرقام ترتبط بـأرقام السجلات في قاعدة البيانات ..

والكود بهذا الشكل:

<meta http-equiv="Content-Language" content="ar-qa">

<%@ Language=VBScript CodePage = "1256"%>



<html dir=rtl>



<!--#include file="pageheader.txt" -->



<!--#include file="connection.txt" -->



<%

id=request.querystring("id")



selectsql="select * from book where id="&id



set rs=ADO.execute(selectSQL)

%>

<%if not rs.eof  then%>



</PRE></CODE></DIV>

<p align="center"><font face="Simplified Arabic" size="5" color="#C11111"><%response.write rs("subject")%></font><p><font face="Simplified Arabic" size="3"><%response.write rs("body")%></font></p>



<p align="center">[img=images/books/<%=rs(].gif"></p>

<%



	end if



ADO.close%>

جزاك الله ألف خير .

وجعلها الله في موازين أعمالك ..

وعلى الخير نلتقي

والسلام

#11

ممتاز جداً

كود بسيط وواضح وطريقة سهلة وبعيدة عن التعقيد

تحياتي وبالتوفيق

هذا الموضوع مغلق.

مواضيع مشابهة