|
|
|
สอบถามปัญหา error การ call webservice ค่ะ อยากทราบว่าเกิดจากอะไร |
|
|
|
|
|
|
|
Code (PHP)
<?
require_once("lib/nusoap.php");
//Create a new soap server
$server = new soap_server();
//Define our namespace
$namespace = "http://localhost/nusoap/WebServiceServer.php";
$server->wsdl->schemaTargetNamespace = $namespace;
//Configure our WSDL
$server->configureWSDL("SPUGuide");
// Register our method and argument parameters
$varname = array(
'idAction' => "xsd:string",
'obj' => "xsd:string"
);
$server->register('ServiceData',$varname, array('return' => 'xsd:string'));
function ServiceData($idAction,$obj)
{
$hostname = "localhost"; //ชื่อโฮสต์
$user = "root"; //ชื่อผู้ใช้
$password = ""; //รหัสผ่าน
$dbname = "test"; //ชื่อฐานข้อมูล
// เริ่มติดต่อฐานข้อมูล
$dbCon=mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
// เลือกฐานข้อมูล
mysql_select_db($dbname,$dbCon) or die("เลือกฐานข้อมูลไม่ได้");
mysql_query('SET CHARACTER SET UTF8');
switch($idAction){
case 'Subject':
$strSQL = "SELECT * FROM subject order by ID_Sub";
$result = mysql_query($strSQL);
$intNumField = mysql_num_fields($result);
$resultArray = array();
while($obResult = mysql_fetch_array($result)){
$arrCol = array();
for($i=0;$i<$intNumField;$i++){
$arrCol[mysql_field_name($result,$i)] = $obResult[$i];
}
array_push($resultArray,$arrCol);
}
mysql_close($dbCon);
header('Content-type: application/json');
return json_encode($resultArray);
break;
case 'Schedule':
$strSQL = "SELECT * FROM schedule Where ID_Sub = '".$obj."' order by ID_Sec";
$result = mysql_query($strSQL);
$intNumField = mysql_num_fields($result);
$resultArray = array();
while($obResult = mysql_fetch_array($result)){
$arrCol = array();
for($i=0;$i<$intNumField;$i++){
$arrCol[mysql_field_name($result,$i)] = $obResult[$i];
}
array_push($resultArray,$arrCol);
}
mysql_close($dbCon);
header('Content-type: application/json');
return json_encode($resultArray);
break;
}
}
// Get our posted data if the service is being consumed
// otherwise leave this data blank.
$POST_DATA = isset($GLOBALS['HTTP_RAW_POST_DATA']) ? $GLOBALS['HTTP_RAW_POST_DATA'] : '';
// pass our posted data (or nothing) to the soap service
$server->service($POST_DATA);
exit();
?>
จาก code นี้ พอ run ผ่าน http://localhost/nusoap/WebServiceServer.php แล้วเจอ error แบบนี้อ่ะค่ะ
Code
Warning: Creating default object from empty value in C:\xampp\htdocs\nusoap\WebServiceServer.php on line 9
ทำโปรเจคค่ะ ใช้โน๊ตบุ๊ค 2 เครื่อง อีกเครื่อง code เหมือนกันแต่ run ได้ปกติ เลยไม่ทราบว่าเกิดจากสาเหตุอะไรค่ะ
Tag : PHP, Web Service
|
|
|
|
|
|
Date :
2013-10-12 23:40:56 |
By :
kat |
View :
1076 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ควรเขียนแบบนี้นะครับ การเขียนคำสั่ง connect DB ควรแยกออกไปเป็นอีกไฟล์นึงเลยจากนั้นค่อย incude หรือ require_once มาจะดีกว่าเพราะว่า . ..
1. เขียนครั้งเดียวสบายใจไม่ต้องไปเขียนบ่อย เพราะมันต้องมีไปทุกไฟล์
2. ถ้าเขียนแบบนี้เวลาอัพขึ้นโฮสจริง หรือเปลี่ยน Server ต้องตามแก้โค้ดติดต่อ DB ไปทุกๆไฟล์ให้เป็นไปตามที่เขากำหนด
ส่วนเรื่อง error นี้รอผู้รู้เรื่อง xampp มาอธิบายนะครับ :)
|
|
|
|
|
Date :
2013-10-12 23:56:13 |
By :
meannerss |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|