Muss der Community mal was zurück geben…
Folgendes Beispiel zeigt wie man in PHP (z.b. Joomla) eine Webseite bauen kann, die sich alle 10sek Daten von der IPS holt und in der Seite updated ohne die ganze Seite neu laden zu müssen. Das Script ist einfach zu erweitern.
Lasst eurer Kreativität freien Lauf
<?php
/*
KOOLPHPSUITE - INSTALL INSTRUCTION
download: http://www.koolphp.net/?mod=products&act=view&id=1
1. Unzip KoolPHPSuite.zip file.
2. Copy KoolPHPSuite folder inside unzipped directory to your localhost folder.
3. Start browsing the suite in web browser with url "http://localhost/KoolPHPSuite/index.php".
*/
// ----------------------------------------------------
//Step 1: Register koolajax component to your page
// ----------------------------------------------------
require "koolajax/koolajax.php";
// ----------------------------------------------------
//Step 2: Serverseitige Zugriffsfunktionen
// ----------------------------------------------------
function getIPSKernelVersion()
{
// Serverseitiger Code SOAP Call to IPS
$IIPSSimpleKernel = new SoapClient("http://server:3773/wsdl/IIPSSimpleKernel");
$res= $IIPSSimpleKernel->GetKernelVersion();
return $res;
}
// ----------------------------------------------------
//Step3: Enable the functions for ajax call.
//For security reason, you need to specify which functions can be called.
// ----------------------------------------------------
$koolajax->enableFunction("getIPSKernelVersion");
?>
<html>
<head>
<title></title>
<!----------------------------------------------------
//Step 4: Register koolajax Komponente
// ---------------------------------------------------->
<?=$koolajax->Render();?>
</head>
<body>
<!----------------------------------------------------
//Step 5: Serverseitige Paneldefinition mit Update Mechanismus
// ---------------------------------------------------->
... Hier irgendwelches HTML ....
<?php echo KoolScripting::Start();?>
<updatepanel id="GetKernelVersion">
<content>
<?php
// Serverseitiger Code der beim Update ausgeführt wird
$erg = getIPSKernelVersion();
echo "KernelVersion=".$erg;
?>
</content>
</updatepanel>
<?php echo KoolScripting::End();?>
... Hier irgendwelches HTML ....
<!----------------------------------------------------
//Step 6: Hier noch Clientseitig für den Update sorgen ...
// ---------------------------------------------------->
<script type = "text/javascript">
function Update()
{
GetKernelVersion.update();
setTimeout("Update()",10000); // Ajax Call alle 10 Sekundem
}
Update();
</script>
</body>
</html>
Falls es nicht läuft …
- Probiers mit dem Firefox und Firebug Plugin - ist cool zu debuggen!
- Php sollte laufen !! -> ausprobieren
- Stelle sicher,dass das KoolPHP packet vorhanden ist siehe Header des Scripts
Ruf eine Testseite im KoolPHP packet auf. - Serveradresse anpassen !!! in http://server:3773/wsdl/IIPSSimpleKernel
- ruf mal http://server:3773/wsdl/ auf mit angepasstem „server“ zb. http://localhost:3773/wsdl
Sollte eine Liste der IPS SOAP Calls liefern.
5a. Stelle sicher das zwischen dem Server des PHP Scripts und dem IPS Soap Server (port 3773) keine Firewall rumpfuscht.