数据接口两种形式 dataFromXml,dataFromClient

1.serverDataFromXml

 <?php

function dataFromPlmXml()
{
    $dbhost = 'localhost'; // mysql服务器主机地址
    $dbuser = 'root'; // mysql用户名
    $dbpass = '123456'; // mysql用户名密码
    $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
    if (! $conn) {
        die('Could not connect: ' . mysqli_error());
    }
    echo '数据库连接成功!';

    mysqli_query($conn, "set names utf8");
    mysqli_select_db($conn, 'test1');
    $xml_array = simplexml_load_file('data.xml'); // 将XML中的数据,读取到数组对象中
    $task_id_plm = $xml_array->workflow_plm['task_id_plm'];
    $task_name = $xml_array->workflow_plm['task_name'];
    $task_path = $xml_array->workflow_plm['task_path'];
    $approve_emp_no = $xml_array->workflow_plm['approve_emp_no'];
    $approve_name = $xml_array->workflow_plm['approve_name'];
    $status = $xml_array->workflow_plm['status'];
    $created_time = $xml_array->workflow_plm['created_time'];

    $part_no = $xml_array->part_no_file['part_no'];
    $site = $xml_array->part_no_file['site'];
    $version_no = $xml_array->part_no_file['version_no'];
    $version_no_seq = $xml_array->part_no_file['version_no_seq'];
    $file_path = $xml_array->part_no_file['file_path'];
    $file_name = $xml_array->part_no_file['file_name'];
    $create_emp_no = $xml_array->part_no_file['create_emp_no'];
    $create_owner = $xml_array->part_no_file['create_owner'];
    $status = $xml_array->part_no_file['status'];
    $lm_time = $xml_array->part_no_file['lm_time'];

    $sql1 = "insert into workflow_plm" . "(task_id_plm,task_name,task_path,approve_emp_no,approve_name,status,created_time)" . "values" . "('$task_id_plm','$task_name','$task_path',
                '$approve_emp_no','$approve_name','$status','$created_time'
               )";

    $sql2 = "insert into part_no_file" . "(part_no,site,version_no,version_no_seq,file_path,file_name,create_emp_no,create_owner,status,lm_time)" . "values" . "('$part_no','$site','$version_no','$version_no_seq',
             '$file_path','$file_name','$create_emp_no','$create_owner',
             '$status','$lm_time')";

    $result1 = mysqli_query($conn, $sql1);
    $result2 = mysqli_query($conn, $sql2);

    if (! $result2) {
        die('无法插入数据2: ' . mysqli_error($conn));
    }
    echo '1数据插入成功!';
    if (! $result1) {
        die('无法插入数据1: ' . mysqli_error($conn));
    }
    echo '2数据插入成功!';
    mysqli_close($conn);

    print_r($task_id_plm);
    return "success! ";
}

echo dataFromPlmXml();
?>

2.serverDataFromClient

<?php
header("content-type:text/html;charset=utf-8");
ini_set("soap.wsdl_cache_enabled", "0");//禁用WSDL缓存功能

require_once('./lib/nusoap.php');

// Create the server instance
$server = new soap_server();//建立一个soap服务
$server->configureWSDL('server', 'urn:server');

$server->wsdl->schemaTargetNamespace = 'urn:server';

// SOAP complex type return type (an array/struct)
$server->wsdl->addComplexType(
    'Person',
    'complexType',
    'struct',
    'all',
    '',
    array('id_user' => array('name' => 'id_user',
        'type' => 'xsd:int'))
    );
//定义数据结构接收数据
$server->wsdl->addComplexType(
    'workflow_plm',
    'complexType',
    'struct',
    'all',
    '',
    array('task_id_plm' => array('name' => 'task_id_plm', 'type' => 'xsd:string'),
        'task_name'=>array('name'=>'task_name','type'=>'xsd:string'),
        'task_path'=>array('name'=>'task_path','type'=>'xsd:string'),
        'approve_emp_no'=>array('name'=>'approve_emp_no','type'=>'xsd:string'),
        'approve_name'=>array('name'=>'approve_name','type'=>'xsd:string'),
        'status'=>array('name'=>'status','type'=>'xsd:string'),
        'created_time'=>array('name'=>'created_time','type'=>'xsd:datetime'),
    )
    );
$server->wsdl->addComplexType(
    'part_no_file',
    'complexType',
    'struct',
    'all',
    '',
    array('part_no' => array('name' => 'part_no','type' => 'xsd:string'),
        'site'=>array('name'=>'site','type'=>'xsd:string'),
        'version_no'=>array('name'=>'version_no','type'=>'xsd:string'),
        'version_no_seq'=>array('name'=>'version_no_seq','type'=>'xsd:string'),
        'file_path'=>array('name'=>'file_path','type'=>'xsd:string'),
        'file_name'=>array('name'=>'file_name','type'=>'xsd:string'),
        'create_emp_no'=>array('name'=>'create_emp_no','type'=>'xsd:string'),
        'create_owner'=>array('name'=>'create_owner','type'=>'xsd:string'),
        'status'=>array('name'=>'status','type'=>'xsd:string'),
        'lm_time'=>array('name'=>'lm_time','type'=>'xsd:datetime'),
    )
    );
// Register the "hello" method to expose it 服务器定义的soap调用方法
$server->register('hello',
    array('username' => 'xsd:string'),   // parameter
    array('workflow_plm'=>'tns:workflow_plm'),//客户端传来的变量
    array('part_no_file'=>'tns:part_no_file'),
    
    array('return' => 'xsd:string'),     // output
    'urn:server',                        // namespace
    'urn:server#helloServer',            // soapaction
    'rpc',                               // style
    'encoded',                           // use
    'Just say hello');                   // description
    
    // Implement the "hello" method as a PHP function
    function hello($username) {
        $dbhost = 'localhost';  // mysql服务器主机地址
        $dbuser = 'root';            // mysql用户名
        $dbpass = '123456';          // mysql用户名密码
        $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
        if(! $conn )
        {
            die('Could not connect: ' . mysqli_error());
        }
        echo '数据库连接成功!';
        
        mysqli_query($conn , "set names utf8");
        mysqli_select_db( $conn, 'test1' );
        /*
         $sql1="update workflow_plm set task_id_plm='".array(['task_id']['name'])."',
         task_name='".array(['task_name']['name'])."',
         task_path='".array(['task_path']['name'])."',
         approve_emp_no='".array(['approve_emp_no']['name'])."',
         approve_name='".array(['approve_name']['name'])."',
         status='".array(['status']['name'])."',
         created_time='".array(['created_time']['name'])."',
         
         ";
         
         $sql2="update part_no_file set site='".array(['site']['name'])."',
         version_no='".array(['version_no']['name'])."'',
         version_no_seq='".array(['version_no_seq']['name'])."'',
         file_path='".array(['file_path']['name'])."',
         file_name='".array(['file_name']['name'])."',
         create_emp_no='".array(['create_emp_no']['name'])."',
         create_owner='".array(['create_owner']['name'])."',
         tatus='".array(['tatus']['name'])."';
         lm_time='".array(['lm_time']['name'])."'
         ";
         */
        $result1 = mysqli_query($conn,$sql1);
        $result2 = mysqli_query($conn,$sql2);
        
        if(! $result2)
        {
            die('无法插入数据2: ' . mysqli_error($conn));
        }
        echo '数据插入成功!';
        if(! $result1)
        {
            die('无法插入数据1: ' . mysqli_error($conn));
        }
        echo '数据插入成功!';
        mysqli_close($conn);
    }
        
        // Use the request to invoke the service
        $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA)
        ? $HTTP_RAW_POST_DATA : '';
        $server->service($HTTP_RAW_POST_DATA);
    ?>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值