webForumDet fria alternativet

hur skicka data från klient till server?

.NET

10 svar · 370 visningar · startad av doggelito

Medlem sedan juni 20003 076 inlägg
Frågan#1

på en klientdator ska jag ha ett litet program gjort i vb där man väljer bland ett par radioboxar och sedan klickar på skicka.
värdena från boxarna ska då skickas till en server och läggas in i en sqlserver 2000.
(klient och server ligger ej på samma nätverk)

frågan är:
på vilket sätt bör värderna skickas? och hur tar jag emot dem på servern och insertar i databasen?

Medlem sedan feb. 20011 198 inlägg
#2

Du måste komma åt det andra nätvärket på något sätt!
Kan du det?
Annars är det nog kört.

Du kan göra ett jobb som körs på sqlservern som importerar en fil eller dylikt.

Medlem sedan juni 20003 076 inlägg
#3

Kommer åt nätverket gör jag.

Fundering:
Skulle man kunna skicka en xml-fil från klienten genom http och sedan ta emot den på servern via sqlserverns virutuella site i iis:en?
Eller krånglar jag bara till det då?

Medlem sedan feb. 20011 198 inlägg
#4

varför inte bara en adodb connection?

Medlem sedan juni 20003 076 inlägg
#5

yohpops skrev:

varför inte bara en adodb connection?

ja, det hade ju kanske varit enklast men jag har ingen access till sqlservern utifrån.

Medlem sedan feb. 20011 198 inlägg
#6

Du kan använda en accessdatabas på klienten som du sedan laddar upp via http, så kan sqlservern använda den.

Medlem sedan maj 200430 inlägg
#7

eller en serverapplikation som skriver in värdet?

Medlem sedan juni 20003 076 inlägg
#8

hittat en smidig lösning (tror jag!) med xml.
koden förutsätter att man har en virutuell site på sin webserver
som är kopplad direkt till sql-servern som tar emot strängen och bearbetar den.
jag har inte hunnit snygga till koden än, men jag ville svara på hur jag gjort så fort som möjligt. :)


Dim objHTTP As New MSXML2.XMLHTTP26
Dim xmlResponse As Object

 
objHTTP.open "GET", "http://server?Username=" & strUsername & "&Password=" & strPassword & "", False

objHTTP.send

Set xmlResponse = objHTTP.responseXML

Set objHTTP = Nothing

Dim objXML As Object
Set objXML = CreateObject("Microsoft.XMLDOM")

objXML.loadXML (xmlResponse.xml)

Dim Root As Object
Dim NodeList As Object
Dim Elem As Variant

Set Root = objXML.documentElement
Set NodeList = objXML.getElementsByTagName("returnCode")

For Each Elem In NodeList
    If Elem.firstChild.nodeValue = 1 Then
    z = LockWorkStation()
        'Label1.Caption = "Sparad"
    Else
        Label1.Caption = "Fel användarnamn eller lösenord"
    End If
Next
Medlem sedan feb. 20011 198 inlägg
#9

Att ha en sql-server kopplad till en virtuell site är inte speciellt säkert.

Medlem sedan juni 20003 076 inlägg
#10

yohpops skrev:

Att ha en sql-server kopplad till en virtuell site är inte speciellt säkert.

kan utveckla lite?
siten tillåter bara xml-templates och det finns bara en template som ser så här:

<return xmlns:sql='urn:schemas-microsoft-com:xml-sql'>
  <sql:header>
    <sql:param name="Username" />
	<sql:param name="Password" />
  </sql:header>
  <sql:query>
	declare @c int
    execute @c = dbo.xmlProfile @Username, @Password
    select '&lt;returnCode>' + cast(@c as varchar(4)) + '&lt;/returnCode>'
  </sql:query>
</return>

varför är det osäkert? går det att hacka siten menar du, eller?

Medlem sedan feb. 20011 198 inlägg
#11

om man inte passar sig med konton och dyl, så kan nån skicka in vilka sql-queries som helst.

260 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)