Jag har en tabell i min DB där det bl a sparas email till alla registrerade användare på min hemsida. Hur har du gjort det hela? Använder du Inloggningen som finns i VS eller har du gjort egen? Användarens inloggningsnamn kan du ta fram så här Tack för hjälpen! Använder du profiler? Om så är fallet så ska den kunna innehålla e-mail adressen vill jag minnas Ska jag vara ärlig så vet jag inte hur man använder profiler... I aspnet_Membership ligger ju även mailadressen och använder du inte profiler så är det ju lätt att plocka ut maladressen ändå Kan du ge mig ett exempel på hur man anropar getMail i asp?? här är min kod: Jag tänker använda det jag får från GetMail i Där lägger du in värdet som du får ut ifrån resultatet ifrån databasen. Jag hittade felet Du kan inte använda enbart SqlCommand för att läsa resultatet. Du behöver ett DataSet, en SqlDataReader, eller åtminstone en SqlParameter med ParameterDirection.Output. "Du behöver ett DataSet, en SqlDataReader..." > Jag använder varken DataSet eller SqlDataReader. Hej!Användarens email-adress??
Jag skulle vilja skicka ett mail till användaren efter att han/hon gjort beställning.
Hur håller jag koll på vilka användare som är inloggade och hur kommer jag åt deras emailadress från min databas?Sv: Användarens email-adress??
Sv: Användarens email-adress??
<code>
User.Identity.Name.ToString();
</code>
Sen kan du ju göra en lagrad procedur som hämtar ut mailadressen och det du vill från databasen. jag vet inte om det finns något sätt att hämta mailadressen i klassen membership.
Hoppas det var detta du menade.Sv:Användarens email-adress??
Jag ska kolla på det här om lagrade procedurer. Är inte så bra på SQL.
Jag återkommer om jag inte lyckas med det... (ganska troligt) :-)
Tack ännu en gång...Sv: Användarens email-adress??
Sv:Användarens email-adress??
Jag använde "CreateUserWizard" i Visual Studio för att skappa sidan där besökare kan registrera sig. Allt sköts av sig självt och alla nya "Users" hamnar i en DBtabell med namn aspnet_membership.Sv: Användarens email-adress??
lagrad procedur
<code>
CREATE PROC getMail
@user nvarchar(256)
AS
DECLARE @id nvarchar(256)
SET @id = ''
SELECT @id = UserId from aspnet_UsersWHERE UserName = @user
SELECT Email From aspnet_Membership WHERE UserId = @id
</code>
@user är användarnamnet.
Nåt sånt ska fungera.Sv:Användarens email-adress??
Har försökt med allt möjligt men det funkar inte...Sv: Användarens email-adress??
Dim MyConnection As SqlConnection
MyConnection = New SqlConnection("...")
'stored procedure "GetMail"
Dim cmd As SqlCommand = New SqlCommand("aspnet_GetMail", MyConnection)
cmd.CommandType = CommandType.StoredProcedure
1. Hur ska jag anropa Getmail så att den returnerar önskad emailadress??
2. GetMail har en inparameter (@user nvarchar(256)), hur ska jag göra för att skicka in rätt username?
JAg har försökt med
Dim myParam As SqlParameter
myParam = cmd.Parameters.Add("@user", SqlDbType.VarChar)
myParam.Value = User.Identity.Name.ToString()
men det fungerar inte....
Hoppas Ni kan hjälpa mig med det här. Sitter här nu i flera dagar och kommer ingenstans...Sv: Användarens email-adress??
Dim mailServerName As String = "mailout.telia.com"
Dim message As MailMessage = New MailMessage()
Dim mailClient As SmtpClient = New SmtpClient
message.To.Add("VAD SKRIVA HÄR!!??")
mailClient.Host = mailServerName
mailClient.Send(message)
message.Dispose()Sv:Användarens email-adress??
Exempel:
message.To.Add(reader.GetString("Email"))Sv: Användarens email-adress??
Dim returnValue As Object
Dim cmd As SqlCommand = New SqlCommand("aspnet_GetMail", MyConnection)
cmd.CommandType = CommandType.StoredProcedure
returnValue = cmd.ExecuteScalar()
message.To.Add(returnValue)Sv:Användarens email-adress??
Sv: Användarens email-adress??
Jag använder varken DataSet eller SqlDataReader.
Det jag skrev i mitt sista inlägg fungerar för mig. Jag får användarens emailadress som jag sen använder för att skicka email till användaren.
Jag hoppas bara att det fungerar lika bra med fler användare som är inloggade samtidigt...Sv:Användarens email-adress??
Jo, indirekt använder du en SqlDataReader. Metoden ExecuteScalar använder en SqlDataReader för att läsa värdet ifrån resultatet.Sv: Användarens email-adress??
För att få fram diverse egenskaper hos din användare kan du använda klassen MembershipUser.
t.ex.
MembershipUser mu = Membership.GetUser(username);
string email = mu.Email;
MVH
Thomas Glod