Oppure

Loading
Questo topic e' stato chiuso dal moderatore.
19/04/09 19:37
feddur
Salve,
vorrei fare interagire un programma in VB6 con una pagine web, mi spiego meglio:
ho trovato un sito dal quale si possono inviare degli sms (massimo due al giorno) e vorrei che un programma mi scrivesse il numero di telefono e il testo sulla pagina web e poi "cliccasse" per inviare il tutto..
si potrebbe fare?
Grazie..
aaa
19/04/09 21:13
GrG
si... e penso anke in + modi... ora quello ke mi viene in mente è quello di aggiungere il componente webbrowser e fare tutto da li... ma che metodo usa la pagina get o post (anche se penso quest'ultimo) ?
aaa
19/04/09 21:36
feddur
questo sarebbe il sito smsgratis.skebby.it/
si può fare?
aaa
20/04/09 19:55
GrG
Si si può fare... però non so se il metodo che sto per dirti è il migliore...(non penso)...allora, io mi agliuto molto con il javascript. In javascript per diciamo "gestire" gli elementi (text, button, ecc..) di una pagina su usa l'oggetto document.
Allora noi che abbiamo?
Analizzando il sorgente della pagina troviamo:
<form onsubmit="return checkForm(this);" method="post" action="">
<input class="ncell" type="text" value="" maxlength="10" size="20" name="number"/> 'numero
<textarea id="testo" class="smstxtarea" cols="43" rows="5" name="testo" onkeyup="charLeft();"/> 'testo
<input class="sendbtn" type="submit" value="INVIA ORA"/> 'button
</form>


Allora, devi sapere che document.forms restituisce un array di form presenti in quella pagina e si possono gestire usando:
document.forms(0).proprietà

e allo stesso modo si possono gestire gli elementi che compongono il form. Per esempio se vedi bene la stringa:
<input class="ncell" type="text" value="" maxlength="10" size="20" name="number"/>
è quella che contiene il numero di telefono... ma come scriverci il testo?
il modo per gestirla è semplice, infatti basta usare:
document.forms(0).nomeoggetto.proprietà
(essendo nel sito in quella pagina solo un form l'unico form esistente è forms(0))
quindi per gestire questa casella di testo basterà usare:
document.forms(0).number.proprietà
e la proprietà per indicare il valore contenuto in number è value quindi setteremo value = ad esempio a text1.text quindi verrà fuori:
webbrowser1.document.forms(0).number.value = text1.text
così facendo nel sito nella casella dedita al numero comparirà il testo di text1...stessa cosa per la text contenente il testo che guardando vediamo name="testo" quindi si kiama testo e verrà fuori ad esempio:
webbrowser1.document.forms(0).testo.value = text2.text

Però vedendo il terzo <input...> che è il pulsante la proprietà name non c'è, come fare?
bè non c'è problema infatti submit è una proprietà del modulo form che invia i dati alla pagina di destinazione (specificata in action) quindi basta scrivere:
webbrowser1.document.forms(0).submit
e questo è come simulare il click del pulsante

quindi ricapitolando:
carichi dal componente webbrowser la pagina
inserisci i dati delle 2 text
invii

aaa
22/04/09 9:57
feddur
grazie GrG,
mi sei stato di grande aiuto! :)
aaa
22/04/09 13:03
GrG
Postato originariamente da feddur:

grazie GrG,
mi sei stato di grande aiuto! :)


di nulla :k:
aaa
22/04/09 15:30
feddur
ho qualche problema! :(
ho più o meno capito il procedimento.. però mi trovo in difficoltà nel realizzare il progetto..
saresti così gentile da farmi un esempio funzionante? :)
grazie! :asd:
aaa
22/04/09 15:42
super rambo
mi sono permesso di farlo seguendo i consigli di grg. ti allego il proggetto
Ultima modifica effettuata da super rambo 22/04/09 15:44
aaa