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

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

کاربر سایت

aminbassam

عضویت از 1393/09/23

عدم درج اطلاعات در دیتابیس با استفاده از CkEditor

  • یکشنبه 22 فروردین 1395
  • 17:19
تشکر میکنم

با سلام .

 

من با استفاده از CKeditor قصد درج اطلاعات در دیتابیس رو دارم ولی پس از زدن کلید ثبت اتفاقی رخ نمیدهد .

قطعه کد من به این صورت است .

Page.aspx

                                    <form role="form">
                                        <div class="form-group">
                                            <label>انتخاب دسته بندی</label>
                                            <asp:DropDownList Width="70%" CssClass="form-control" ID="DropDownListCat" runat="server"
                                                DataSourceID="SqlDataSourceCat" DataTextField="ServCat" DataValueField="ServCatId">
                                            </asp:DropDownList>
                                            <asp:SqlDataSource ID="SqlDataSourceCat" runat="server"
                                                ConnectionString="<%$ ConnectionStrings:ConStr %>"
                                                SelectCommand="SELECT * FROM [TableServCat]"></asp:SqlDataSource>
                                        </div>
                                        <div class="form-group">
                                                  <label>متن</label>
                                            <asp:TextBox ID="text" CssClass="ckeditor" TextMode="MultiLine" runat="server" />
                                        </div>
                                        <asp:Button ID="ButtonSubmit" CssClass="btn btn-default btn-success " runat="server" Text="ارسال" OnClick="ButtonSubmit_Click" />
                                    </form>

 و Page.aspx.cs

 protected void ButtonSubmit_Click(object sender, EventArgs e)
        {
            SqlConnection _connection_Insert = new SqlConnection(ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString);
            string sqlQuery = "INSERT INTO TableServices (text, ServCatId) VALUES(@text,@ServCatId)";
            SqlCommand _command = new SqlCommand(sqlQuery, _connection_Insert);
            _command.Parameters.AddWithValue("@text", text.Text);
            _command.Parameters.AddWithValue("@ServCatId", DropDownListCat.SelectedValue);
            try
            {
                _connection_Insert.Open();
                _command.ExecuteNonQuery();
            }
            finally
            {
                _connection_Insert.Close();
                text.Text = "";
            }
            Response.Redirect("Page.aspx");
        }

فایل web.config

  <system.web>
    <compilation debug="true" targetFramework="4.5.1"/>
    <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>
    <httpRuntime maxUrlLength="10999" maxQueryStringLength="2097151" requestValidationMode="2.0" />
  </system.web>
  <connectionStrings>
    <add name="ConStr" connectionString="data source=.; initial catalog=db_test; user id=user; password=pass;" />
  </connectionStrings>
  <system.webServer>
    <security>
      <requestFiltering>
        <requestLimits maxUrl="10999" maxQueryString="2097151" />
      </requestFiltering>
    </security>
  </system.webServer>
</configuration>

من در پروژه های قبلیم از ادیتور tiny_mce استفاده میکردم که بدون مشکل متن در دیتابیس  ذخیره میشد ولی وقتی ادیتور رو عوض کردم این کار صورت نمیگیره , و برنامه بدون هیچ ارروری اجرا میشود و پیغام خطایی به من داده نمیشه ؛ لینکی که پس از زدن دکمه ثبت در آدرس بار نشون داده میشه چیزی شبیه این میباشد ..

http://localhost:1824/Manager/Page.aspx?ctl00%24ContentPlaceHolderBody%24DropDownListCat=1&ctl00%24ContentPlaceHolderBody%24text=%3Cp%3Easdfsddf%3C%2Fp%3E%0D%0A&ctl00%24ContentPlaceHolderBody%24ButtonSubmit=%D8%A7%D8%B1%D8%B3%D8%A7%D9%84

 

ممنون میشم اگه راهنمایی کنید .

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

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

ایمان مدائنی

عضویت از 1392/01/20

  • یکشنبه 22 فروردین 1395
  • 17:36

try  را بردارید تا خطا مشخص شود

کاربر سایت

aminbassam

عضویت از 1393/09/23

  • یکشنبه 22 فروردین 1395
  • 17:50

من قطعه کدم رو به صورت زیر تغییر دادم ولی همچنان مشکل پا برجاست .

 

            using (SqlConnection db = new SqlConnection())
            {
                db.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString;
                db.Open();
                using (SqlCommand insertUser = new SqlCommand())
                {
                    insertUser.Connection = db;
                    insertUser.CommandText = "INSERT INTO TableServices (text, ServCatId) VALUES(@text,@ServCatId)";
                    insertUser.Parameters.AddWithValue("@Email", text.Text);
                    insertUser.Parameters.AddWithValue("@ServCatId", DropDownListCat.SelectedValue);
                    insertUser.ExecuteNonQuery();
                }
            }

 

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • یکشنبه 22 فروردین 1395
  • 17:53

به شکل زیر بنویسید

using (SqlConnection db = new SqlConnection())
{
    db.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString;
    db.Open();
    using (SqlCommand insertUser = new SqlCommand())
    {
        insertUser.Connection = db;
        insertUser.CommandText = "INSERT INTO TableServices (text, ServCatId) VALUES(@text,@ServCatId)";
        insertUser.Parameters.AddWithValue("@text", text.Text);
        insertUser.Parameters.AddWithValue("@ServCatId", DropDownListCat.SelectedValue);
        insertUser.ExecuteNonQuery();
    }
}

 

کاربر سایت

aminbassam

عضویت از 1393/09/23

  • یکشنبه 22 فروردین 1395
  • 18:01

اشتباه لپی !! surprise

همچنان مشکل پابرجاست ..

URL که پس از زدن دکمه به من تحویل میده شامل همه اطلاعاتیه که باید در دیتابیس ذخیره بشه ولی توی URL نشون میده به من ..

 

کاربر سایت

aminbassam

عضویت از 1393/09/23

  • دوشنبه 23 فروردین 1395
  • 08:54

در سایت خود CKEditor ؛ dll هایی برای استفاده در asp.net هست .. امکانش هست مشکل من با استفاده از اون dll ها رفع بشه ؟

 

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • دوشنبه 23 فروردین 1395
  • 09:29

بله

امتحان کنید ضرر نداره

کاربر سایت

aminbassam

عضویت از 1393/09/23

  • دوشنبه 23 فروردین 1395
  • 19:02

مشکل من حل شد ..

به این صورت عمل کردم , از این لینک فایل مربوط به CKEditor 3.6.6.2 for ASP.NET رو دانلود کردم و از مسیر bin\Release فایل CKEditor.NET.dll رو به صورت رفرنس به پروژم اضافه کردم در فایل web.config این قطعه کد رو اضافه کردم

 <system.web>
<pages>
<controls>
<add tagPrefix="CKEditor" assembly="CKEditor.NET" namespace="CKEditor.NET"/>
</controls>
</pages>
</system.web>

 و در نهایت قطعه کد زیر رو جهت فراخوانی ادیتور در پروژم اضافه کردم

<CKEditor:CKEditorControl ID="CKEditor1" BasePath="~/ckeditor" runat="server"></CKEditor:CKEditorControl>

 

و با اضافه کردن دکمه و کد های مربوط به ارتباط با دیتابیس و اضافه کردن ؛ بدون هیچ مشکلی اجرا شد و متنی که در ادیتور اضافه کرده بودم داخل دیتابیس ثبت شد .

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

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

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

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