• 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
نوشتن وب سرویس
#1
سلام به دوستان عزیز

من میخوام با PHP یه وب سرویس بنویسم راهنماییم میکنید که باید

برای اینکار چیکار کنم؟

ممنون از تمام دوستان عزیزHeart
  پاسخ
تشکر شده توسط :
#2
http://davidwalsh.name/web-service-php-mysql-xml-json
من خودم بارها از پایه نوشتم. چیز خاصی نداره. توابعی رو برای خودت تعریف میکنی و در قالب یه کلاس قرار میدی بعد ایمنی رو برقرار میکنی بعدش خروجی رو به چند صورت (xml یا json یا هردو) در اختیار طرف دیگه قرار میدی. نویسنده لینک بالا مطلب خوبی در اینباره نوشته.
غایب
  پاسخ
تشکر شده توسط : Reza mojtabadj farhadfery ali786 ayoubsys
#3
یه ebook واسه وب سرویس دارم خیلی بدرد میخوره میزارم که دوستان هم استفاده کنند


فایل‌های پیوست
.pdf   PHP web services with the NuSOAP library.pdf (اندازه 238.59 KB / تعداد دانلود: 466)
  پاسخ
تشکر شده توسط : cyletech farhadfery Reza ali786 AnsNet ayoubsys
#4
بچه ها تو ارسال کلمه فارسی از سمت کلاینت مشکل دارم کلمه ارسالی تبدیل به علامت سوال میشه Huh

چطوری فارسی رو بگیرم و چطوری فارسی بفرستم سمت کلاینت؟
  پاسخ
تشکر شده توسط :
#5
نمیتونم آرایه رو برگردونم چیکار کنم؟
  پاسخ
تشکر شده توسط :
#6
کدهاتو بذار اینجا .
وبلاگ rezaonline.net/blog
سفارش برنامه نویسی reza.biz
Php , mysql , postgresql , redis , Yii and ... Cool
  پاسخ
تشکر شده توسط :
#7
کد سرور:
کد پی‌اچ‌پی:
//====================================* search_wiki *=====================================
$server->wsdl->addComplexType(
    
'wiki_list',
    
'complexType',
    
'struct',
    
'all',
    
'',
    array(
     
'wiki_id'=>array('name'=>'wiki_id','type'=>'xsd:int'),
     
'name'=>array('name'=>'name','type'=>'xsd:string'))
    );
$server->register('search_wiki',                // method name
    
array('search_word' => 'xsd:string'),  
    array(
'return' => 'tns:wiki_list'),      
    
'urn:tombwsdl',                      
    
'urn:tombwsdl#search_wiki',                
    
'rpc',                                
    
'encoded',                            
    
'search in wiki'            
);

function 
search_wiki($search_word) {
        global 
$db;
        
$wiki_array= array();

        
$search_word $db->escape($search_word); 
        
        
$sql="SELECT wiki_id,name_en as name
         FROM wiki WHERE `name_en` LIKE '%
$search_word%' order by wiki_id  
        LIMIT 0,10"
;
        
        
        
$result $db->getAll($sql);
    
        if(!
$result)
            return 
false;
         else
         {
            
            foreach(
$result as $value)
            {
                
$wiki_array['wiki_id'] =$value['wiki_id'];
                
$wiki_array['name'] =$value['name'];
            }
            
//$wiki_array['wiki_id'] =5;
            //$wiki_array['name'] ='elham';
            
         
}                    
        return 
$wiki_array;
}
//====================================* search_wiki *===================================== 

کلاینت :
کد پی‌اچ‌پی:
$parameters = array('search_word' => 'moj');
        
$result $client->call('search_wiki'$parameters);
// Check for a fault
if ($client->fault) {
    echo 
'<h2>Fault</h2><pre>';
     
print_r(var_dump($result));
    echo 
'</pre>';
} else {
    
// Check for errors
    
$err $client->getError();
    if (
$err) {
        
// Display the error
        
echo '<h2>Error</h2><pre>' $err '</pre>';
    } else {
        
// Display the result
        
echo '<h2>Result</h2><pre>';
        
print_r($result);
    echo 
'</pre>';
    }


تو سرور کدو انیطوری بنویسم برنمیگردونه :

کد پی‌اچ‌پی:
$wiki_array[] =array('wiki_id'=>$value['wiki_id'],'name'=>$value['name']); 

ولی اینطوری جواب میده و فقط 1 خانه از آرایه رو بر میگردونه:

کد پی‌اچ‌پی:
$wiki_array =array('wiki_id'=>$value['wiki_id'],'name'=>$value['name']); 
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان