Berikut ini adalah contoh coding data presensi dengan mesin X103C.
Misal IP address 192.168.0.201 dan key atau passwordnya: 123
$ip=”192.168.0.201″;
$key=”123″;
$Connect = fsockopen($ip, “80”, $errno, $errstr, 1);
if($Connect)
{
$soap_request=”<GetAttLog><ArgComKey xsi:type=\”xsd:integer\”>”.$key.”</ArgComKey><Arg><PIN xsi:type=\”xsd:integer\”>All</PIN></Arg></GetAttLog>”;
$newLine=”\r\n”;
fputs($Connect, “POST /iWsService HTTP/1.0”.$newLine);
fputs($Connect, “Content-Type: text/xml”.$newLine);
fputs($Connect, “Content-Length: “.strlen($soap_request).$newLine.$newLine);
fputs($Connect, $soap_request.$newLine);
$buffer=””;
while($Response=fgets($Connect, 1024)){
$buffer=$buffer.$Response;
}
}
else
{
die(“Koneksi Gagal”);
}
Datanya adalah pada variable $buffer, jika kita ingin menampilkan maka programnya:
$log_response=Parse_Data($buffer,”<GetAttLogResponse>”,”</GetAttLogResponse>”);
$log_response=str_replace(“\r\n”,”\n”,$log_response);
$a_log_response=explode(“\n”,$log_response);
for($a=0;$a<count($a_log_response);$a++)
{
$baris=Parse_Data($a_log_response[$a],”<Row>”,”</Row>”);
$PIN=(int)Parse_Data($baris,”<PIN>”,”</PIN>”);
$DateTime=Parse_Data($baris,”<DateTime>”,”</DateTime>”);
$Verified=Parse_Data($baris,”<Verified>”,”</Verified>”);
$Status=Parse_Data($baris,”<Status>”,”</Status>”);
if ($PIN)
{
echo “\n<br/>pin=$PIN, time:$DateTime, verified=$Verified, status=$Status”;
}
}
Sedang function dari Parse_Data sendiri adalah:
function Parse_Data($data,$p1,$p2){
$data=” “.$data;
$hasil=””;
$awal=strpos($data,$p1);
if($awal!=””){
$akhir=strpos(strstr($data,$p1),$p2);
if($akhir!=””){
$hasil=substr($data,$awal+strlen($p1),$akhir-strlen($p1));
}
}
return $hasil;
}
Artikel terkait :
: https://github.com/cobisja/tad-php .
Kunjungi www.proweb.co.id untuk menambah wawasan anda.