PDA

View Full Version : سوال: مشکل در آپلود فایل



saba106
جمعه 05 شهریور 1389, 22:17 عصر
سلام مشکل کد زیر چیه؟


protected void Button4_Click(object sender, EventArgs e)
{
DateTime time_d = new DateTime();
time_d = DateTime.Now;
time = Convert.ToString(time_d.Hour) + ":" + Convert.ToString(time_d.Minute) + ":" + Convert.ToString(time_d.Second);
cDate farsi = new cDate();
farsi.displyFormat = "YY;/;mm;/;dd";
if (FUp.HasFile)
{
//if (FUp.PostedFile.ContentLength < 101)
if (FUp.FileName.Substring(FUp.FileName.LastIndexOf(' .')) == ".pdf" || FUp.FileName.Substring(FUp.FileName.LastIndexOf('. ')) == ".doc" || FUp.FileName.Substring(FUp.FileName.LastIndexOf('. ')) == ".docx" || FUp.FileName.Substring(FUp.FileName.LastIndexOf('. ')) == ".txt" || FUp.FileName.Substring(FUp.FileName.LastIndexOf('. ')) == ".rar" || FUp.FileName.Substring(FUp.FileName.LastIndexOf('. ')) == ".zip")
{
FUp.SaveAs(Server.MapPath("GroupFile\\") + FUp.FileName);
filename = "GroupFile\\" + FUp.FileName.Trim().ToString();
}
//if (FUp.PostedFile.ContentLength > 10*1024*1024)
//{
// Label6.Text = " 100 !";
// Label6.Visible = true;
//}
}
//else
//{
// Label8.Visible = true;
//}
SqlCommand cmd1 = new SqlCommand("select * from Files where FileName=@filename", con);
cmd1.Parameters.AddWithValue("@filename", filename);
con.Open();
SqlDataReader dr = cmd1.ExecuteReader();
dr.Read();
if (dr.HasRows)
{
Label7.Visible = true;
flag = 1;
}
dr.Close();
con.Close();
if (flag != 1)
{
SqlCommand cmd = new SqlCommand("insert into Files(IDGroup,FileName,Address,Date,Time) values(@IDGroup,@FileName,@Address,@Date,@Time)", con);
cmd.Parameters.AddWithValue("@FileName", namefiletxt.Text.Trim());
cmd.Parameters.AddWithValue("@Address", filename);
cmd.Parameters.AddWithValue("@IDGroup", Session["group_id"]);
cmd.Parameters.AddWithValue("@Date", farsi.fulDate(farsi.getPersianDate(DateTime.Now))) ;
cmd.Parameters.AddWithValue("@Time", time);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
SqlDataSource3.SelectCommand = "SELECT Files.FileName, Files.Address, Files.FileID, Files.Time, Files.Date FROM Files INNER JOIN Groups ON Files.IDGroup = Groups.IDGroup WHERE (Files.IDGroup = " + Session["group_id"] + ")";
GridView3.DataBind();
}

دستوراتی که توی if (FUp.HasFile) نوشته شده اصلا اجرا نمیشه. میشه بگین مشکلش چیه؟ مرسی

Vahid_moghaddam
جمعه 05 شهریور 1389, 23:06 عصر
fileupload رو توی update panel گذاشتید؟

PhoenixNet
شنبه 06 شهریور 1389, 10:59 صبح
سلام
کد رو به این شکل آدرس دهی کنید


FUp.SaveAs(Server.MapPath("/GroupFile/") + FUp.FileName);

saba106
شنبه 06 شهریور 1389, 22:57 عصر
fileupload رو توی update panel گذاشتید؟
نه خارج update panel هست اما با کلیک کردنش گرید ویو آپدیت میشه

saba106
شنبه 06 شهریور 1389, 23:04 عصر
سلام
کد رو به این شکل آدرس دهی کنید


FUp.SaveAs(Server.MapPath("/GroupFile/") + FUp.FileName);
موقع اجرا اصلا به این قسمت کد نمیرسه با اینکه تو fileupload فایل هست دستورات شرط if(FUp.hasfile) رو اجرا نمیکنه!!!! نمیدونم چرا اینجوریه

saba106
یک شنبه 07 شهریور 1389, 16:26 عصر
میشه یکی کمکم کنه. این پروژه پایانیمه و باید تا یه هفته دیگه تحویل بدم:گریه:

Vahid_moghaddam
یک شنبه 07 شهریور 1389, 17:37 عصر
اگه می تونید پروژه رو attach کنید تا بررسی بشه.

saba106
یک شنبه 07 شهریور 1389, 20:20 عصر
اگه می تونید پروژه رو attach کنید تا بررسی بشه.
حجم پروژه زیاده اگه فقط همون صفحه رو attach کنم میشه مشکل رو حل کرد؟
مرسی

Vahid_moghaddam
یک شنبه 07 شهریور 1389, 21:13 عصر
همون صفحه رو بذارید. aspx و cs

saba106
یک شنبه 07 شهریور 1389, 22:43 عصر
صفحه ها رو attach کردم
مرسی

newsoft
یک شنبه 07 شهریور 1389, 23:06 عصر
یه پیشنهاد کاری که خودم معمولا انجام میدم
وقتی می خوام با یه کامپونت جدید کار کنم
اول یه پروژه جدید ایجاد می کنم بعد توی یه صفحه ساده کدوشو تست می کنم بعد به برنامه اصلیم اضافه میکنم


ببین این تجربه کوچیک جواب می ده

یه پیغام برات فرستادم

Vahid_moghaddam
یک شنبه 07 شهریور 1389, 23:12 عصر
button4 رو از update panel بیارید بیرون (بذارید post back کامل انجام بده.)

در حال حاضر اینطوریه:


<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button4" EventName="Click" />
<asp:AsyncPostBackTrigger ControlID="updatebtn" EventName="Click" />
</Triggers>