Click here to Skip to main content
15,888,461 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
SQL
After inserting the data...image and description not insert that particular row as am using session for that...and the error is ("Missing semicolon (;) at end of SQL statement.") and the when i next time run the program i can see the image in the datalist bt
not in database....plz tell me...see the code below...


C#
protected void btnSubmit_Click(object sender, EventArgs e)
    {
        //Get Filename from fileupload control
        String extention;
        String name = fileuploadimages.FileName;
        String name1 = name.ToUpper();

        if (name1.EndsWith(".JPG"))
            extention = ".JPG";
        else if (name1.EndsWith(".GIF"))
            extention = ".GIF";
        else if (name1.EndsWith(".JPEG"))
            extention = ".JPEG";
        else
            extention = "";


        String filename = Path.GetFileName(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Today.Minute.ToString() + DateTime.Now.Second.ToString() + extention);
        //Save images into SlideImages folder

        fileuploadimages.SaveAs(Server.MapPath("SlideImages/" + filename));
        //Open the database connection
        con.Open();
        //Query to insert images name and Description into database
        OleDbCommand cmd = new OleDbCommand("Insert into SlideShowTable(ImageName,Description) values(@ImageName,@Description) where CategoryID='" + txtcat.Text + "'And ArName='" + txtarea.Text + "' ", con);
        //Passing parameters to query
        cmd.Parameters.AddWithValue("@ImageName", filename);
        cmd.Parameters.AddWithValue("@Description", txtDesc.Text);
        cmd.ExecuteNonQuery();
        //Close dbconnection

        txtDesc.Text = string.Empty;
        //BindDataList();


        // string filename = Path.GetFileName(fileuploadimages.PostedFile.FileName);
        string targetPath = Server.MapPath("SlideImages/" + filename);
        Stream strm = fileuploadimages.PostedFile.InputStream;
        var targetFile = targetPath;
        //Based on scalefactor image size will vary
        GenerateThumbnails(0.5, strm, targetFile);
        con.Close();
        BindDataList();
    }

    private void GenerateThumbnails(double scaleFactor, Stream sourcePath, string targetPath)
    {
        using (var image = Image.FromStream(sourcePath))
        {
            var newWidth = (int)(700 * scaleFactor);
            var newHeight = (int)(700 * scaleFactor);
            var thumbnailImg = new Bitmap(newWidth, newHeight);
            var thumbGraph = Graphics.FromImage(thumbnailImg);
            thumbGraph.CompositingQuality = CompositingQuality.HighQuality;
            thumbGraph.SmoothingMode = SmoothingMode.HighQuality;
            thumbGraph.InterpolationMode = InterpolationMode.HighQualityBicubic;
            var imageRectangle = new Rectangle(0, 0, newWidth, newHeight);
            thumbGraph.DrawImage(image, imageRectangle);
            thumbnailImg.Save(targetPath, image.RawFormat);
        }
    }
}
Posted
Updated 11-Mar-13 20:52pm
v2

1 solution

wrong query....

Insert into ... with where condition is wrong
C#
OleDbCommand cmd = new OleDbCommand("Insert into SlideShowTable(ImageName,Description) values(@ImageName,@Description) where CategoryID='" + txtcat.Text + "'And ArName='" + txtarea.Text + "' ", con);


syntax is
Insert into tblnm(column list...) values(value list...)

Happy Coding!
:)
 
Share this answer
 
Comments
Raj@88 12-Mar-13 5:12am    
what is the mistake...didn't getting..plz tell me..
Aarti Meswania 12-Mar-13 5:13am    
it should be

OleDbCommand cmd = new OleDbCommand("Insert into SlideShowTable(ImageName,Description) values(@ImageName,@Description)", con);
Raj@88 12-Mar-13 5:25am    
sir...i know that bt...i want insert the data in particular row..where the data is already filled bt not these 2 colm ...for this i hv taken these value in session from another page...

wait...
the another page coding is given below..

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.OleDb;
using System.IO;

public partial class CreatAdverties : System.Web.UI.Page
{
OleDbConnection con = new OleDbConnection(ConfigurationManager.ConnectionStrings["dbconnection"].ToString());


protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Bindcatogeryropdown();
BindAreadropdown();
}

}

protected void BindAreadropdown()
{
//conenction path for database

con.Open();
OleDbCommand cmd = new OleDbCommand("select * from AreaTable", con);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
con.Close();
ddlCreateAddArea.DataSource = ds;
ddlCreateAddArea.DataTextField = "AreaName";
ddlCreateAddArea.DataValueField = "AreaID";
ddlCreateAddArea.DataBind();
ddlCreateAddArea.Items.Insert(0, new ListItem("Select Area", "0"));
ddlCreateAddArea.Items.Insert(0, new ListItem("Select Category ", "0"));

}

protected void Bindcatogeryropdown()
{
//conenction path for database

con.Open();
OleDbCommand cmd = new OleDbCommand("select * from catname", con);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
con.Close();
ddlCreateAddCategory.DataSource = ds;
ddlCreateAddCategory.DataTextField = "CategoryName";
ddlCreateAddCategory.DataValueField = "ID";
ddlCreateAddCategory.DataBind();
ddlCreateAddArea.Items.Insert(0, new ListItem("Select Area", "0"));
ddlCreateAddCategory.Items.Insert(0, new ListItem("Select Category ", "0"));

}

public void ddlCreateAddArea_SelectedIndexChanged(object sender, EventArgs e)
{
string AreaID = ddlCreateAddArea.SelectedItem.ToString();
con.Open();
OleDbCommand cmd = new OleDbCommand("select * from SlideShow where AreaName='" + AreaID + "' ", con);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
con.Close();
if (ddlCreateAddCategory.SelectedValue == "0")
{
}
}

public void ddlCreateAddCategory_SelectedIndexChanged(object sender, EventArgs e)
{
string CategoryID = ddlCreateAddCategory.SelectedItem.ToString();
string ArName = ddlCreateAddCategory.SelectedItem.ToString();
con.Open();
OleDbCommand cmd = new OleDbCommand("select * from SlideShowTable where CategoryName='" + CategoryID + "' And AreaName='" + ArName + "' ", con);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
con.Close();
}
protected void btncreat_Click(object sender, EventArgs e)
{

////Get Filename from fileupload control
//String extention;
//String name = fileuploadimages.FileName;
//String name1 = name.ToUpper();

//if (name1.EndsWith(".JPG"))
// extention = ".JPG";
//else if (name1.EndsWith(".GIF"))
// extention = ".GIF";
//else if (name1.EndsWith(".JPEG"))
// extention = ".JPEG";
//else
// extention = "";


//String filename = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTi
Aarti Meswania 12-Mar-13 5:27am    
not sir I am girl
do you want to update row???
Raj@88 12-Mar-13 5:30am    
yes...mam..i want update the row..

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900