مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

sg.programmer

عضویت از 1393/06/30

مشکل با updatepanel و Fileupload

  • دوشنبه 24 اسفند 1394
  • 19:58
تشکر میکنم

سلام من چند تا تکست و یک فایل آپلود و یک دکمه ثبت اطلاعات در دیتابیس دارم که داخل یک آپدیت پنل هستند و تریگر هم برای دکمه ثبت اطلاعات گذاشتم ولی وقتی دکمه ثبت را میزنم هیچ مقداری در فایل آپلود قرار نمیگیره که من در دیتابیس ذخیره کنم.

چگونه این مشکل را حل کنم؟

پاسخ های این پرسش

تعداد پاسخ ها : 4 پاسخ
کاربر سایت

sg.programmer

عضویت از 1393/06/30

  • دوشنبه 24 اسفند 1394
  • 21:24

با تریگر زیر کارم حل شد
 

<asp:PostBackTrigger ControlID="btnRunEghdam" />

مشکل دیگه : بخاطر postback ای که روی میده من یک آپدیت پنل دیگه  داشتم که از داخل آن یک پیامی را بعد از ثبت به کاربر نشون میاد بخاصر این تریگر دیگه اون پیام نشون نمیده چیکار باید انجام بدم تا این پیام بعد از ثبت اطلاعات به کاربر نشون داده بشه؟

این دستور من هست که بدون اعمال postback به درستی کار میکرد ولی الان انجام نمیشه (نمایش پیام)

   
     _SaveRun();


        System.Text.StringBuilder sb = new System.Text.StringBuilder();



        sb.Append(@"<script type='text/javascript'>");



        sb.Append("$('#form_modal').modal('show');");



        sb.Append(@"</script>");



        ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "myModalScript", sb.ToString(), false);
کاربر سایت

moonfa1392

عضویت از 1394/08/17

  • دوشنبه 24 اسفند 1394
  • 23:00

سلام

برای آپلود عکس یا فایل میتونید از این روش استفاده کنید

یک fileupload یا input file و یک Button و دوتا تگ p قرار بدید

    <p id="Alert" runat="server"></p>
    <asp:FileUpload ID="Upload" runat="server" />
    <asp:Button ID="OK" runat="server" Text="آپلود" CssClass="OK" OnClick="OK_Click" />
    <p id="Alert2" class="Alert2" runat="server"></p>

 

 

کدنویسی هم به این صورت هست

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Controls_UploadCenter : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Alert.InnerText = "لطفا عکس یا فایل مورد نظر خود را از سیستم انتخاب کنید.";
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        if (UploadFile.PostedFile.ContentLength > 0)
        {
            string virpath=string.Format("Upload/{0}",UploadFile.PostedFile.FileName);
            string Address = string.Format(Server.MapPath("~/Upload/{0}"), UploadFile.PostedFile.FileName);
            UploadFile.PostedFile.SaveAs(Address);
            string msg = string.Format("<p class='green'> آپلود با موفقیت انجام شد</p><p> آدرس :{0} </p>", virpath);
            Alert.InnerText = "آپلود با موفقیت انجام شد";
            Alert2.InnerHtml = msg;
        }
    }
}

 

همونطور که میبینید تگ p که آی دی Alert رو دادیم برای نمایش پیغام به کاربر هست و تگ p که آی دی Alert2 رو دادیم برای نمایش آدرس آپلود به کاربر هست که البته میتونید از textbox هم استفاده کنید و برای نمایش آدرس آپلود هم در کدنویسی از string virpath استفاده کردیم که در نهایت Alert2.InnerHtml = msg; رو برای نمایش گذاشتیم

کد ها رو داخل if گذاشتیم و UploadFile.PostedFile.ContentLength > 0 نوشتیم بخاطر اینکه فقط در صورتی که یک فایل انتخاب شده بود آپلود کنه

در string address هم آدرس فایل رو میگیریم که ما اینجا فایل رو در پوشه Upload ریختیم

فقط توجه کنید در این روش آپلود نمیشه از Ajax استفاده کرد

موفق باشید

کاربر سایت

sg.programmer

عضویت از 1393/06/30

  • سه شنبه 25 اسفند 1394
  • 00:03

تشکر مهندس - میخوام داخل آپدیت چنل باشه و این روش کار نمیکنه چون پست بک نمیشه و در پست دوم توضیح دادم اگر پست بک بدم دیگه الرتم که داخل اپدیت پنل بعدی هست کار نمیکنه این موضوع را چیکار کنم؟

کاربر سایت

moonfa1392

عضویت از 1394/08/17

  • سه شنبه 25 اسفند 1394
  • 03:05

بله عرض کردم در این روش نمیشه از ajax استفاده کرد

برای آپلود فایل با ajax این مقاله ها رو مطالعه کنید

آپلود عکس با استفاده از jQuery ajax در ASP.Net

آپلود فایل یا تصویر بدون postback ، Refresh یا Reload صفحه در Asp.Net

فایل های ضمیمه

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)