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

طريقة حفظ مسار الصورة في قاعدة البيانات

بدأه vip_h في 23 مارس 2008 · 15 رد · 1,872 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

عند تنفيذ كود FilleUpload يتم تحميل المسار كامل الملف في قاعدة البيانات

مثال:

D:\Documents and Settings\Family\My Documents\Visual Studio 2005\WebSites\Project Show\UploadFiles00medications (17).gif

كيف يمكن حفظ المسار كما يليمن خلال الكود في قاعدة البيانات:

~\UploadFiles\00medications (12).gif

الكود المستخدم في حفظ الصورة :

Dim myFile1 As HttpPostedFile = FileUpload1.PostedFile

Dim filenameimg As String = System.IO.Path.GetFileName(myFile1.FileName)

Dim contenttype1 As String = myFile1.ContentType

Dim conn As New SqlConnection

conn.ConnectionString = SqlDataSource1.ConnectionString

conn.Open()

Dim savePath As String = Server.MapPath("~\UploadFiles")

savePath += filenameimg

Dim qyr As String = "insert into Files(name,father,MyFile)values('" & Textname.Text & "','" + Textfather.Text + "','" + savePath + "')"

Dim ocmd As SqlClient.SqlCommand = New SqlClient.SqlCommand

ocmd.Connection = conn

ocmd.CommandText = qyr

ocmd.ExecuteNonQuery()

myFile1.SaveAs(Server.MapPath("UploadFiles/" & filenameimg))

#2
[ALIGN=LEFT]Dim myFile1 As HttpPostedFile = FileUpload1.PostedFile
			Dim filenameimg As String = System.IO.Path.GetFileName(myFile1.FileName)
			Dim contenttype1 As String = myFile1.ContentType
			Dim conn As New SqlConnection
			conn.ConnectionString = SqlDataSource1.ConnectionString
			conn.Open()
			Dim savePath As String = "~\UploadFiles"
			savePath += filenameimg
 Dim qyr As String = "insert into Files(name,father,MyFile)values('" & Textname.Text & "','" + Textfather.Text + "','" + savePath + "')"
			Dim ocmd As SqlClient.SqlCommand = New SqlClient.SqlCommand
			ocmd.Connection = conn
			ocmd.CommandText = qyr
			ocmd.ExecuteNonQuery()

			myFile1.SaveAs(Server.MapPath("UploadFiles/" & filenameimg))[/ALIGN]

-----------------------------------------------------------------------------------------------------------------------------





 

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

Mohammad Sonaiea
 

#3

شكرا على الرد السريع...... جربت الكود

ولكن المشكل بقية كما هي

#4

اخي

اكيد الكود السابق صحيح يوجد مشكلة اخرى لديك

طيب انت شلون عرفت ان المشكلة كما هي

بعد الاضافة انت عابتشوف جدول الـfiles بالداتا بيس والقيمة الخلية بالحقل MyFile غير صحيحة ؟؟؟؟؟؟؟؟؟

على كل حال انت حذوف جميع الاسطر ضمن الجدول files واضف من جديد وشاهد محتوى الجدول اذا كانت الاضافة صحيحة ....

تم تعديل هذه المشاركة بواسطة محمد سماقية في 23 مارس 2008 في 13:39

-----------------------------------------------------------------------------------------------------------------------------





 

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

Mohammad Sonaiea
 

#5

بسم الله الرحمن الرحيم

اشتغل معي الكود الخطأ..... هو إضافة \ بعد UploadFiles كما هو موجود قبلة

Dim savePath As String = "~\UploadFiles\"

أشكرك مرة أخرى على الرد السريع

أما الأن بعد ما أشتغلت الصورة هل من الممكن التالي:

1-هل يمكن جعل الصور التي تعرض في ال GridViewتكون لفترة محدودة

2- هل من الممكن أن أضغط على الصورة الموجودة في ال GridViewليتم عرضها في صفحة جديدة

#6
vip_h كتب:
أما الأن بعد ما أشتغلت الصورة هل من الممكن التالي:

1-هل يمكن جعل الصور التي تعرض في ال GridViewتكون لفترة محدودة

2- هل من الممكن أن أضغط على الصورة الموجودة في ال GridViewليتم عرضها في صفحة جديدة

نعم تستطيع فعل ذلك

من اجل الطلب الاول باستخدام الـjavascript وسوف ارفق لك كود بأقرب وقت ان شاء الله

بس اذا تفضلت ياريت تضع لنا كود gridview الذي تستخدمه اي بصفحة الـhtml

الطلب الثاني اكيد ممكن ضيف للصورة حدث او الواصفة onclick باستخدام كلاس attribute واسند لها القيمة التالية

java script:window.open('imagePath')

-----------------------------------------------------------------------------------------------------------------------------





 

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

Mohammad Sonaiea
 

#7
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections;
using System.Text;
/// <summary>
/// Eng.Mohammad Suamkiea
/// mbatman_1983@hotmail.com
/// </summary>
class item
{
	string name_;
	string path_;

	public string name
	{
		get { return name_; }
		set { name_ = value; }
	}


	public string path
	{
		get { return path_; }
		set { path_ = value; }
	}


}
public partial class _Default : System.Web.UI.Page
{
	string itemsID = "";
	protected void Page_Load(object sender, EventArgs e)
	{
		ArrayList array = new ArrayList();
		for (int i = 1; i < 8; i++)
		{
			item item_ = new item();
			item_.name = "hellow" + i.ToString();
			item_.path = @"~\img\" + i.ToString() + @".gif";
			array.Add(item_);
		}
		GridView1.DataSource = array;
		GridView1.DataBind();

		StringBuilder script = new StringBuilder();
		script.Append("function hide(){");
		script.Append(itemsID);
		script.Append("}");
		script.Append("setTimeout(hide,5000);");//هنا زمن الاخفاء وهو 5000 ميلي ثانية
		ClientScript.RegisterStartupScript(this.GetType(), "script", script.ToString(), true);

	}
	protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
	{
		if (e.Row.DataItemIndex != -1)
		{
			Image img = new Image();
			img.Attributes.Add("onclick", @"java script:window.open('" + Page.ResolveClientUrl(e.Row.Cells[1].Text) + "')");
			img.Style.Add("cursor", " hand");
			img.ImageUrl = e.Row.Cells[1].Text;
			e.Row.Cells[1].Controls.Add(img);
			itemsID = itemsID + "document.getElementById('" + img.ClientID.ToString() + "').style.display='none';";
		}
	}
	protected void Page_unLoad(object sender, EventArgs e)
	{



	}
}

post-127137-1206283831_thumb.jpg

WebSite7.zip

تم تعديل هذه المشاركة بواسطة محمد سماقية في 23 مارس 2008 في 17:50

-----------------------------------------------------------------------------------------------------------------------------





 

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

Mohammad Sonaiea
 

#8

أخي الحبيب مني عارف كيف أشكر........ جزاك الله خير

بالنسبة لكود GridView

موجود في المرفقات

أما بالنسبة للأمر الثاني

java script:window.open('imagePath')

أين يتم كتابة الحدث في داخل صفحة ال html أو صفحة الأكواد vb مع العلم أريد تطبيقه على GridView

ووفقق الله

#9

أخي العزيز

هو أن يضيف المدير الإعلان الذي يستقبلة الموقع من الزائر الذي يحدد المدة المطلوبة لعرضة ثم يقوم المدير يقوم المدير بإدراج العلان ويبقى في العرض على حسب المدة المحددة من الزائر مثال من 23/3/2008 إلى 5/4/2008 ثم يختفي الإعلان

وشكرا

في المرفقات صفحة Defualt هي الصفحة المطلوب عمل التعديل عليها

Project_Show.zip

#10

اخي

هكذا اتضح الامر إن شاء الله بأقرب وقت سوف اضع كود الحل

-----------------------------------------------------------------------------------------------------------------------------





 

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

Mohammad Sonaiea
 

#11

وأنا بإنتظار ردودك السريعة المثمرة .... وإن شاء الله يستفيد إخواننى في المنتدى من هذا الموضوع

وشكرا لك

#12

اخي التعديل بسيط

فقط ضمن الـselect للـSqlDataSource1 الموجودة بصفحة default.aspx ضف عبارة الـsql التالية

SELECT	 ID, Caption, MyFile, name, father, BData, EData, fullN
FROM		 Files
WHERE	 (GETDATE() BETWEEN BData AND EData+1)

تم تعديل هذه المشاركة بواسطة محمد سماقية في 24 مارس 2008 في 10:23

-----------------------------------------------------------------------------------------------------------------------------





 

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

Mohammad Sonaiea
 

#13

مشكووووووووووووووووووووور

#14

شكرا لك على المتابعة

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

يقوم المدير كل فترة بإدخال تاريخ جديد من خلال ال textbox يؤدي إلى تجديد التاريخ من غير تدخل المبرج أرجو أن تكون الفكرة وصلت

....

أما بالنسبة لفتح الصورة في صفحة جديدة كتبت الحدثonclick الذي ذكرته في ال GridView الموجودة في الhtml وظهر خط بأن الأمر المكتوب خطأ كما كتبته حقل الصورة الموجود في الGridView ظهر أيضا بأن الأمرخطأ.... أرجو الإفادة

وشكرا

للتوضيح أكثر بشأن مدة العرض ....

هناك من يريد عرض إعلانة مدة أسبوع، وقد أكتب في جملة select مدة العرض شهر فيبقى إعلانه أكثر من إسبوع

أرجو أن تكون الفكرة وضحت أكثر

#15

بالنسبة لخطأ الحدث onclick موجود في المرفقات

post-59634-1206361058_thumb.png

#16

شكرا أخي محمد على ماقدمته من مساعده

- هل من الممكن وضع شرط في جملة select بأن لا يتم عرض سوى إعلانات اليوم يعني أمر يقرن به بين تاريخ اليوم والتاريخ المسجل بشكل يومي دون التدخل مني غدا يجب أن اسلم المشروع

أرجو الإفادة

تم تعديل هذه المشاركة بواسطة vip_h في 25 مارس 2008 في 17:12

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