igoogle Seniormester
13. februar 2018 - 12:30 Der er 7 kommentarer

Indsæt mail header og tekst i sql database

Hej,

jeg prøver at få sat en løsning op så når jeg modtager en mail så laver den en linje i min sql database med afsender header og brødteksten (første 100 tegn)

men er løbet tør for gode ideer om hvordan dette lige kan strikkes sammen.

Nogen der har nogen gode snippets som jeg kan fikse sammen ?

-igoogle
13. februar 2018 - 12:43 #1
Hvilket mailprogram bruger du?
igoogle Seniormester
13. februar 2018 - 13:05 #2
Outlook 2016
sidwave Ekspert
13. februar 2018 - 13:30 #3
find ud af formatet på mails, skil den ad med en text/hex editor/html editor

du skriver du kun vil have 100 tegn af teksten, så husk at kopiere slutningsheaderen i mailen med.
acore Ekspert
13. februar 2018 - 13:51 #4
Hvor ligger dine mails?

Hvor ligger din sql database?

Du kan med php læse mails via imap protokollen og gemme dem i din database. Så er den ged barberet. Men nu poster du under "E-mail programmer", så forestiller du dig, at dette skal ske loklat fra dit mail-program, eller...?
13. februar 2018 - 14:05 #5
Step 1

Option Explicit
Private WithEvents inboxItems As Outlook.Items
Private Sub Application_Startup()
  Dim outlookApp As Outlook.Application
  Dim objectNS As Outlook.NameSpace
 
  Set outlookApp = Outlook.Application
  Set objectNS = outlookApp.GetNamespace("MAPI")
  Set inboxItems = objectNS.GetDefaultFolder(olFolderInbox).Items
  MsgBox "her"
End Sub
Private Sub inboxItems_ItemAdd(ByVal Item As Object)
On Error GoTo ErrorHandler
Dim Msg As Outlook.MailItem
Dim MessageInfo
Dim Result
If TypeName(Item) = "MailItem" Then
    MessageInfo = "" & _
        "Sender : " & Item.SenderEmailAddress & vbCrLf & _
        "Sent : " & Item.SentOn & vbCrLf & _
        "Received : " & Item.ReceivedTime & vbCrLf & _
        "Subject : " & Item.Subject & vbCrLf & _
        "Size : " & Item.Size & vbCrLf & _
        "Message Body : " & vbCrLf & Item.Body
    Result = MsgBox(MessageInfo, vbOKOnly, "New Message Received")
End If
ExitNewItem:
    Exit Sub
ErrorHandler:
    MsgBox Err.Number & " - " & Err.Description
    Resume ExitNewItem
End Sub


Placeres i ThisOutlookSession
13. februar 2018 - 14:38 #6
Step 2

Efter
Result = MsgBox(MessageInfo, vbOKOnly, "New Message Received")


kan du indsætte

    Dim oCon As ADODB.Connection
    Dim oRS As ADODB.Recordset
    Set oCon = New ADODB.Connection
    oCon.ConnectionString = "Provider=SQLOLEDB;Server=.\SQLEXPRESS;Database=DINDATABASE; Trusted_Connection=yes;"
    oCon.Open
    oCon.Execute "INSERT INTO Emails (Mailaddress) VALUES ('" & Item.SenderEmailAddress & "')"
    '
    oCon.Close
    If Not oCon Is Nothing Then Set oCon = Nothing


Der skal desuden sættes hak i Microsoft ActiveX Data Objects xx Libray

Så skulle du kunne komme resten af vejen selv ;-)
13. februar 2018 - 14:57 #7
En lille krølle...
Hvis du vil undgå SQL Injection bør du bruge parametre

Dim oCon As ADODB.Connection
    Dim oRS As ADODB.Recordset
    Dim oCm As ADODB.Command
    Dim oPm As ADODB.Parameter
    Set oCon = New ADODB.Connection
    oCon.ConnectionString = "Provider=SQLOLEDB;Server=.\SQLEXPRESS;Database=DINDATABASE; Trusted_Connection=yes;"
    oCon.Open
    Set oCm = New ADODB.Command
    With oCm
        .ActiveConnection = oCon
        .CommandText = "INSERT INTO Emails (Mailaddress) VALUES (?)"
        .CommandType = adCmdText
        Set oPm = .CreateParameter("mailaddress", adVarChar, adParamInput, 50)
        oPm.Value = Item.SenderEmailAddress & "test"
        .Parameters.Append oPm
        .Execute
    End With
    oCon.Close
    If Not oCon Is Nothing Then Set oCon = Nothing
Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links

Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
Kendt dansk trafik-app nægter at fjerne undersøgelse trods trussel om fogedforbud: "Den her undersøgelse bliver liggende, indtil der kommer en ny"
Interview: Saphe-stifter nægter at fjerne undersøgelse fra oktober 2017 fra tjenestens hjemmeside, men han erkender, at han ikke aner, hvordan det danske marked for trafik-apps forholder sig i dag. "Det kan være, at vi laver en ny undersøgelse på et tidspunkt, men den her undersøgelse bliver liggende, indtil der kommer en ny," lyder det.
Computerworld
Yousee varsler prisstigninger på op til 36 procent - skal være med til at finansiere fiber-udrulning
Yousee varsler prisstigninger på både tv-pakker og bredbånd. Pengene skal blandt andet være med til finansiere fiber-investeringer.
CIO
Tag med på Computerworlds store lederkonference og mød de danske top-CIO'er, som bygger de nye it-afdelinger
Anvendelsen af digital teknologi og organiseringen af it-afdelinger er under radikal transformation. På konferencen Digitaliseringsledelse 2.0 kan du møde de CIO'er fra Bankdata, Adform og Rockwoll, som står i spidsen for teknologi-adoptionen.
Job & Karriere
Manden bag Stack Overflow til softwareudviklere og folk i it-branchen: Disse ting skal du lære, hvis du vil undgå at blive tromlet totalt
Interview: Manden bag Stack Overflow og Trello har en opsang til folk i it-branchen. Her er de kompetencer, som du bare skal tilegne dig nu.
White paper
Sådan vælger du det bedste intranet
At vælge den bedste, eller skal vi kalde det, den rette intranetplatform til din virksomhed eller organisation, er ikke nødvendigvis nogen let opgave. Sammenlignet med andre stykker software eller værktøjer til udførelse af specifikke behov, ja så er et intranet typisk en platform, der skal implementeres på tværs af hele virksomheden. Det med det faktum, at det også vil berøre mere eller mindre samtlige ansatte og funktionsområder, hvorfor man alt andet lige skal gøre sig ekstra umage – både mht. valg af hvilken platform, men også mht. udarbejdelse af business case, implementering, udrulning samt adoption og uddannelse. Dette er en 40 siders udførlig guide til dig som skal i gang med at vælge intranetplatform til din virksomhed, og mangler inspiration til, hvordan hele processen bør køre fra start til slut.