10/10/2018, 00:17
mong được hướng dẫn về script PHP này
Server yêu cầu request đến link http://www.abcd.com/abcd.asmx/GETALL
Với username : abcd và password abcd
Thì sẽ trả về IE theo định dạng XML như trên (mình xin post lại cho tiện theo dõi )
<Class1>
<student1>
<VAN>10</VAN>
<TOAN>9</TOAN>
<LY>8</LY>
</student1>
<student2>
<VAN>5</VAN>
<TOAN>6</TOAN>
<LY>7</LY>
</student2>
</class1>
Mình viết như vậy mong các bạn góp ý đúng không nhé :
<?php
$ch = curl_init();
$data = array('Username' => 'abcd', 'Password' => 'abcd');
curl_setopt($ch, CURLOPT_URL, 'http://www.abcd.com/GETALL');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data1 = curl_exec($ch);
curl_close($ch);
?>
(SERVER SẼ CHỈ TRẢ VỀ THEO ĐỊNH DẠNG XML NHƯ MÌNH VÍ DỤ TRÊN )
Nếu đoạn code trên đúng thì mình muốn lấy giá trị các biến STUDENT1,STUDENT2,VAN,TOAN,LY để lưu vào datbase và xử lý
Chắc các bạn hiểu ý mình rùi nhỉ ??
Mong nhận được sự giúp đỡ và tu vấn
thanks nhìu
Với username : abcd và password abcd
Thì sẽ trả về IE theo định dạng XML như trên (mình xin post lại cho tiện theo dõi )
<Class1>
<student1>
<VAN>10</VAN>
<TOAN>9</TOAN>
<LY>8</LY>
</student1>
<student2>
<VAN>5</VAN>
<TOAN>6</TOAN>
<LY>7</LY>
</student2>
</class1>
Mình viết như vậy mong các bạn góp ý đúng không nhé :
<?php
$ch = curl_init();
$data = array('Username' => 'abcd', 'Password' => 'abcd');
curl_setopt($ch, CURLOPT_URL, 'http://www.abcd.com/GETALL');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data1 = curl_exec($ch);
curl_close($ch);
?>
(SERVER SẼ CHỈ TRẢ VỀ THEO ĐỊNH DẠNG XML NHƯ MÌNH VÍ DỤ TRÊN )
Nếu đoạn code trên đúng thì mình muốn lấy giá trị các biến STUDENT1,STUDENT2,VAN,TOAN,LY để lưu vào datbase và xử lý
Chắc các bạn hiểu ý mình rùi nhỉ ??
Mong nhận được sự giúp đỡ và tu vấn
thanks nhìu
Bài liên quan
2. Giả sử bạn đã thêm tag "<?xml version='1.0' ...?>" vào chuỗi xml trên và quá trình request file xml trên ko có trục trặc j ( tức là lúc này
$data1= "<?xml version='1.0' ... </student2></class1>" ;
Mình sẽ vd để lấy điểm TOAN của student1 :
$xh = new SimpleXMLElement($data1);
$Toan = (string)$xh->student1->TOAN ; // $Toan sẽ là kiểu chuỗi, bạn tự ép kiểu hay làm j đó làm
p/s : Nếu xml bạn thay đổi tag từ class1->class và student1->student thì "điểm Toán của SV thứ 1" sẽ được lấy như sau :
$Toan = (string)$xh->student[0]->TOAN ; // Có thể dùng foreach trên đối tượng student này ...
=> SimpleXML đơn giản nhỉ
Have fun
Mình đã sửa lại file XML thjeo đúng cấu trúc trên nhưng khi thêm phần lấy biến thì bị báo lỗi 500 INTERNAL SEVER ERROR
$xh = new SimpleXMLElement($data1);
$Toan = (string)$xh->student[0]->TOAN ;
Echo "Diem toan SV 1 la : ".$Toan;
Mogn nhận được góp ý
Bạn thử vào phpinfo search từ "SimpleXML" xem, nếu chưa có thì enable SimpleXML extension đi.
* SimpleXML mặc định đc enable sẵn trên php5
Vậy là host chua enable SimpleXML !?? Mình xài host CPANEL , mong nhận được giúp dỡ làm sao enable SIMPLEXML !??
rất cám ơn