Hi George616,
Check this example. Now please take its reference and correct your code.
SQL
CREATE TABLE Users
(
Uid INT IDENTITY PRIMARY KEY,
email VARCHAR(50),
pass VARCHAR(50),
con_pass VARCHAR(50),
UserRole CHAR(1),
Name VARCHAR(50),
CreatedBy INT,
image VARBINARY(MAX),
CreateDate DATETIME
)
INSERT INTO Users VALUES ('wills@gmail.com','123','123','A',NULL,NULL,NULL,GETDATE())
CREATE TABLE UserWallet
(
Id INT IDENTITY PRIMARY KEY,
Uid INT,Email VARCHAR(50),
Name VARCHAR(50),
amount NUMERIC(18,2)
)
INSERT INTO UserWallet VALUES (1,'wills@gmail.com',NULL,0)
HTML
<table>
<tr>
<td>Name:</td>
<td><asp:TextBox ID="txtname" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>Email:</td>
<td><asp:TextBox ID="mailtxtbx" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>Password:</td>
<td><asp:TextBox ID="pass" runat="server" TextMode="Password"></asp:TextBox></td>
</tr>
<tr>
<td>Confirm Password:</td>
<td><asp:TextBox ID="conpass" runat="server" TextMode="Password"></asp:TextBox></td>
</tr>
<tr>
<td>Image:</td>
<td><asp:FileUpload ID="Filedoc" runat="server" /></td>
</tr>
<tr>
<td colspan="2" align="center">
<asp:Button ID="btnSignUp" runat="server" Text="Sign Up" OnClick="OnSignUp" /></td>
</tr>
</table>
Namespaces
C#
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.IO;
VB.Net
Imports System.Configuration
Imports System.Data
Imports System.Data.SqlClient
Imports System.IO
Code
C#
protected void OnSignUp(object sender, EventArgs e)
{
if (mailtxtbx.Text != "" & pass.Text != "" & conpass.Text != "" & txtname.Text != "")
{
if (pass.Text.Trim() == conpass.Text.Trim())
{
if (Filedoc.HasFile)
{
int Uid = -1;
byte[] image;
Stream s = Filedoc.PostedFile.InputStream;
BinaryReader br = new BinaryReader(s);
image = br.ReadBytes((Int32)s.Length);
string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(@"INSERT INTO Users (email, pass, con_pass, UserRole, Name, image, CreateDate)
VALUES (@email,@pass,@con_pass,@UserRole,@Name,@image,@CreatedDate); SELECT SCOPE_IDENTITY();"))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@email", mailtxtbx.Text.Trim());
cmd.Parameters.AddWithValue("@pass", pass.Text.Trim());
cmd.Parameters.AddWithValue("@con_pass", conpass.Text.Trim());
cmd.Parameters.AddWithValue("@UserRole", 'A');
cmd.Parameters.AddWithValue("@Name", txtname.Text.Trim());
cmd.Parameters.AddWithValue("@image", image);
cmd.Parameters.AddWithValue("@CreatedDate", DateTime.Now);
cmd.Connection = con;
con.Open();
object returnObj = cmd.ExecuteScalar();
if (returnObj != null)
{
int.TryParse(returnObj.ToString(), out Uid);
}
con.Close();
}
}
if (Uid > 0)
{
// Checkif if Invited using QueryString.
if (!string.IsNullOrEmpty(Request.QueryString["Uid"]))
{
// Update CreatedBy and UserRole columns.
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand("UPDATE Users SET CreatedBy = @CreatedBy,UserRole = @Role WHERE Uid = @Uid"))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@Uid", Uid);
cmd.Parameters.AddWithValue("@CreatedBy", Convert.ToInt32(Request.QueryString["Uid"]));
cmd.Parameters.AddWithValue("@Role", 'U');
cmd.Connection = con;
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
}
}
// Insert into UserWallet Table.
using (SqlConnection con = new SqlConnection(constr))
{
string query = "INSERT INTO UserWallet (Uid, email, Name, amount) VALUES (@Uid, @email, @Name, @amount)";
using (SqlCommand objCMD = new SqlCommand(query, con))
{
objCMD.Parameters.AddWithValue("@Uid", Uid);
objCMD.Parameters.AddWithValue("@email", mailtxtbx.Text.Trim());
objCMD.Parameters.AddWithValue("@Name", txtname.Text.Trim());
objCMD.Parameters.AddWithValue("@amount", 0);
con.Open();
objCMD.ExecuteNonQuery();
con.Close();
}
}
}
mailtxtbx.Text = "";
pass.Text = "";
conpass.Text = "";
txtname.Text = "";
}
}
}
}
VB.Net
Protected Sub OnSignUp(ByVal sender As Object, ByVal e As EventArgs)
If mailtxtbx.Text<> "" And pass.Text<> "" And conpass.Text<> "" And txtname.Text<> "" Then
If pass.Text.Trim() = conpass.Text.Trim() Then
If Filedoc.HasFile Then
Dim Uid As Integer = -1
Dim image As Byte()
Dim s As Stream = Filedoc.PostedFile.InputStream
Dim br As BinaryReader = New BinaryReader(s)
image = br.ReadBytes(CType(s.Length, Int32))
Dim constr As String = ConfigurationManager.ConnectionStrings("constr").ConnectionString
Using con As SqlConnection = New SqlConnection(constr)
Using cmd As SqlCommand = New SqlCommand("INSERT INTO Users (email, pass, con_pass, UserRole, Name, image, CreateDate) VALUES (@email, @pass, @con_pass, @UserRole, @Name, @image, @CreatedDate); SELECT SCOPE_IDENTITY();") cmd.CommandType = CommandType.Text
cmd.Parameters.AddWithValue("@email", mailtxtbx.Text.Trim())
cmd.Parameters.AddWithValue("@pass", pass.Text.Trim())
cmd.Parameters.AddWithValue("@con_pass", conpass.Text.Trim())
cmd.Parameters.AddWithValue("@UserRole", "A"c)
cmd.Parameters.AddWithValue("@Name", txtname.Text.Trim())
cmd.Parameters.AddWithValue("@image", image)
cmd.Parameters.AddWithValue("@CreatedDate", DateTime.Now)
cmd.Connection = con
con.Open()
Dim returnObj As Object = cmd.ExecuteScalar()
If returnObj IsNot Nothing Then
Integer.TryParse(returnObj.ToString(), Uid)
End If
con.Close()
End Using
End Using
If Uid > 0 Then
If Not String.IsNullOrEmpty(Request.QueryString("Uid")) Then
Using con As SqlConnection = New SqlConnection(constr)
Using cmd As SqlCommand = New SqlCommand("UPDATE Users SET CreatedBy = @CreatedBy,UserRole = @Role WHERE Uid = @Uid")
cmd.CommandType = CommandType.Text
cmd.Parameters.AddWithValue("@Uid", Uid)
cmd.Parameters.AddWithValue("@CreatedBy", Convert.ToInt32(Request.QueryString("Uid")))
cmd.Parameters.AddWithValue("@Role", "U"c)
cmd.Connection = con
con.Open()
cmd.ExecuteNonQuery()
con.Close()
End Using
End Using
End If
Using con As SqlConnection = New SqlConnection(constr)
Dim query As String = "INSERT INTO UserWallet (Uid, email, Name, amount) VALUES (@Uid, @email, @Name, @amount)"
Using objCMD As SqlCommand = New SqlCommand(query, con)
objCMD.Parameters.AddWithValue("@Uid", Uid)
objCMD.Parameters.AddWithValue("@email", mailtxtbx.Text.Trim())
objCMD.Parameters.AddWithValue("@Name", txtname.Text.Trim())
objCMD.Parameters.AddWithValue("@amount", 0)
con.Open()
objCMD.ExecuteNonQuery()
con.Close()
End Using
End Using
End If
mailtxtbx.Text = ""
pass.Text = ""
conpass.Text = ""
txtname.Text = ""
End If
End If
End If
End Sub