Seite 1 von 1
WebGadget Kompatibilität und Variable übergeben
Verfasst: 06.02.2008 13:31
von Zero_Cool
Hallo Zusammen,
Ich habe mal eine kleine Frage zur WebGadget Funktion. Wie Kompatibel ist diese Funktion mit gängigen Standards? Unterstützt das Gadget Css? Php sollte kein Problem sein, da PSP serverseitig ausgeführt wird.
Meine zweite Frage wäre, wie ich es schaffe Variablen zwischen der Website's und dem Programm auszutauschen? Wie übergebe ich eine Variable die im Quellcode definiert ist, an die Website und umgekehrt? Danke und Gruss Phil
Re: WebGadget Kompatibilität und Variable übergeben
Verfasst: 06.02.2008 13:48
von Kiffi
Zero_Cool hat geschrieben:Wie Kompatibel ist diese Funktion mit gängigen Standards?
Das WebGadget ist unter Windows eine Instanz des Internet Explorers.
Sprich: Alle 'Standards', die der IE unterstützt, unterstützt auch das
Webgadgets. Alternativ kannst Du mit Angabe des Flags #PB_Web_Mozilla
ein Mozilla ActiveX einbinden. Dieses ActiveX musst Du dann allerdings
separat auf Deinem Rechner oder dem Zielrechner installieren. Es reicht
also nicht, einen installierten Firefox auf dem Rechner zu haben (weitere
Infos: siehe PB-Hilfe unter WebGadget).
Zero_Cool hat geschrieben:Meine zweite Frage wäre, wie ich es schaffe Variablen zwischen der Website's
und dem Programm auszutauschen? Wie übergebe ich eine Variable die im
Quellcode definiert ist, an die Website und umgekehrt?
Variable im Quellcode? Verstehe ich nicht. Meinst Du Formular-Inhalte? Erklär mal genauer.
Grüße ... Kiffi
Verfasst: 06.02.2008 13:58
von Zero_Cool
Okay, alles klar.
Das heisst, wenn ich es richtig verstehe, dass wenn kein IE installiert ist, das Webgadget nicht funktioniert?
Mit den Variablen habe ich mich nicht korrekt ausgedrückt, sorry.
Folgendes, ich erkläre es am besten mittels einem Beispiel.
Ich öffne das Programm, es wird Passwort und der Name abgefragt (String Gadget), ist die Eingabe korrekt kommt das Webgadget ins Spiel und zeigt eine Seite an. Der Name der vorher in das String Gadget eingegeben wurde sollte nun als Titel auf der Website stehen. Wie mache ist das zu realisieren?
Ich übergebe somit eine Eingabe (Variable) vom Programm an den Quelltext der Website.
Spontan fällt mir die Möglichkeit mittels $_GET ein, aber ich denke es gibt eine schönere Lösung? Gruss phil
Verfasst: 06.02.2008 14:07
von ts-soft
Zero_Cool hat geschrieben:Okay, alles klar.
Das heisst, wenn ich es richtig verstehe, dass wenn kein IE installiert ist, das Webgadget nicht funktioniert?
Da der IE sowieso nicht deinstallierbar ist (seit XP) sollte dies kein
Problem sein. Kann man in den Systemvoraussetzungen seines
Programmes erwähnen, wenn man Anwender mit Uralt-Systemen

erreichen möchte
Verfasst: 06.02.2008 14:08
von Kiffi
Zero_Cool hat geschrieben:Ich übergebe somit eine Eingabe (Variable) vom Programm an den Quelltext der Website.
kann man eigentlich relativ einfach machen, indem man das
entsprechende HTML programmatisch generiert und mit
SetGadgetItemText() in das WebGadget streamt. Hier mal ein simples
Beispiel (die HTML-Tags habe ich mal weggelassen, ich denke, dass Du
auch so das Prinzip verstehen wirst):
Code: Alles auswählen
Enumeration
#myWindow
#myWebgadget
#myStringGadget
#myButtonGadget
EndEnumeration
If OpenWindow(#myWindow, #PB_Ignore, #PB_Ignore, 272, 253, "", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(#myWindow))
WebGadget(#myWebgadget, 10, 10, 250, 175, "about:blank")
StringGadget(#myStringGadget, 10, 195, 250, 20, "")
ButtonGadget(#myButtonGadget, 10, 220, 250, 20, "Login")
EndIf
Repeat
Event = WaitWindowEvent()
Select Event
Case #PB_Event_Gadget
Select EventGadget()
Case #myButtonGadget
If GetGadgetText(#myStringGadget)=""
MessageRequester("", "Eingabe erforderlich!")
Else
HTML.s = "Hallo " + GetGadgetText(#myStringGadget)
SetGadgetItemText(#myWebgadget, #PB_Web_HtmlCode, HTML)
EndIf
EndSelect
EndSelect
Until Event = #PB_Event_CloseWindow
EndIf
Grüße ... Kiffi
Verfasst: 06.02.2008 14:21
von Zero_Cool
Danke Kiffi, wie immer super hilfe
Verstehe das Prinzip. Kleine Frage zum Schluss, mit diesem Beispiel erstelle ich sozusagen offline eine Website und Streame die Variablen. Was mache ich nun, wenn ich die Website bereits online existiert und die Variablen an diese existierende Website übergeben werden sollen?
Danke und Gruss Phil
Verfasst: 06.02.2008 14:28
von Kiffi
Zero_Cool hat geschrieben:Was mache ich nun, wenn ich die Website bereits online existiert und die Variablen an diese existierende Website übergeben werden sollen?
dann kannst Du mit SetGadgetText() und entsprechender
Parameterübergabe diese Seite aufrufen:
Code: Alles auswählen
User.s = GetGadgetText(#myUsername)
Pass.s = GetGadgetText(#myPassword)
; [hier evtl. noch das Encoding von User und Pass anpassen]
SetGadgetText(#myWebGadget, "[adresse]/deineseite.php?user=" + User + "&pass=" + Pass)
Du musst in der 'deineseite.php' diese Parameter dann selber auslesen.
Grüße ... Kiffi
Verfasst: 06.02.2008 16:04
von Zero_Cool
Besten! Dachte ich mir schon, dass es mit $_GET funktioniert!
Vielen Dank, habt mir super geholfen! Grüsse