Sta je sve potrebno za jAPI?
Najpre je potrebno da u svoju index.html (ili bilo koju drugu html stranu) ucitate odgovarajuce skripte jAPI.js, jAPI-Remote.php.
jAPI-Remote.php u sustini moze da bude bilo koja php skripta cije public metode zelite da pozivate kroz javascript.
Tako da bi html kod koji se tice tog dela trebao da izgleda ovako:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!-- jQuery is optional, you dont have to use it, but I reccommend it to you -->
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="js/jAPI.js"></script>
<script type="text/javascript" src="jAPI-Remote.php"></script>
</head>
<body></body>
</html>
Obzirom da se komunikacija izmedju klijentske i serverske strane vrsi asinhrono ostavio sam mogucnost u jAPI.js -u da moze da se koristi i jQuery ajax tako da je ukljucivanje jQuery biblioteke opciono.
Kao sto rekoh, jAPI-Remote.php moze da bude bilo koja php skripta cije public metode zelite da pozivate kroz javascript, ali da bi to mogli da ucinite potrebno je ukljuciti jAPI-Core.php, i da prilikom instanciranja jAPIBaseClass-a na kraju vase skripte kao parametar navedete imena klasa cije metode zelimo da pozivate.
Jedan od primera kako bi recimo jAPI-Remote.php skript mogao da izgleda:
<?php
//Include jAPI Core and jAPIBaseClass
include("httpHandler/jAPI-CORE.php");
//Bellow is some demo classes with some basic functions
class MySimpleMath {
public function Addition($firstParam, $seccondParam) {
$sum = $firstParam+$seccondParam;
echo $sum;
}
public function CompareNumbers($firstNum, $seccondNum) {
$comparingResults = ($firstNum == $seccondNum)?"The numbers are equal":"The number is not equal";
echo $comparingResults;
}
}
class MyStringMixer {
public function ReverseString($inputString) {
echo strrev($inputString);
}
public function JustSayHi() {
echo "Hello world!";
}
}
//Create new instance of jAPIBaseClass with names of all classes that you want to use separeted with comma...
new jAPIBaseClass('MySimpleMath,MyStringMixer');
?>
I, to bi bilo to :)
Nakon svega ovoga, mozete pozivati kroz javascript direktno public php metode klasa koje ste ekstendovali jAPIBaseClass klasom.
Primer koriscenja:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!-- jQuery is optional, you dont have to use it, but I reccommend it to you -->
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="js/jAPI.js"></script>
<script type="text/javascript" src="jAPI-Remote.php"></script>
</head>
<body>
<script>
MySimpleMath.Addition(555,2);
MySimpleMath.CompareNumbers(23,55);
MyStringMixer.ReverseString("This is a test...");
MyStringMixer.JustSayHi();
</script>
</body>
</html>
Ceo funkcionalan primer, zajedno sa skriptama koje nisu ovde navedene (jAPI.js i jAPI-Core.php) mozete preuzeti ovde
...naravno, verovatno sam negde nesto i prevideo, ali svakako bi bilo zanimljivo cuti i vasa misljenja, i eventualne predlog (konstruktivne) kako poboljsati ovo.
Pozdrav ;)
[Ovu poruku je menjao Vladica Savić dana 27.06.2010. u 18:26 GMT+1]