[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[orca-tech:01872] PHPによる新



お騒がせいたしましたが、何とか実用的なPHPプログラムができました。
アドバイスいただいた方に感謝します。
下記にプログラム掲載しますので、ご意見やご批評あればよろしくお願いします。

入力フォーム
-----------------patientinfoget.html-----------------------
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>患者基本情報の取得</title>
</head>
<body>
<form action="patientinfoget.php" method="post">
  患者ID:<br />
  <input type="text" name="patid" size="10" value="" /><br />
  <br />
  <input type="submit" value="検索する" />
</form>
</body>
</html>
---------------------------------------------------------------------

患者情報表示プログラム
------------patientinfoget.php---------------------------------
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>患者基本情報</title>
</head>
<body>
<?php
#患者IDを入力フォームより取得
$patid=$_POST["patid"] ;

#orcaのユーザー、パスワード、ホスト情報
$user = "ormaster";
$password = "orca1234";
$host="localhost";

#GETリクエストするURL
$url = "http://"; . $user . ":" . $password . "@" . $host . ":8000/api01r/patie
ntget?id=" . $patid;
#echo $url . "<br />";

$tmpfile="tmp.xml";

#Curl関数でAPIからXMLファイルを取得
$ch = curl_init($url);
$fp = fopen($tmpfile, "w");

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);

curl_exec($ch);
curl_close($ch);
fclose($fp);

#Simplexml関数でXMLファイルを解析
$xml = simplexml_load_file($tmpfile);

#社会保険のレコード枠を数える
foreach($xml->record->record->record->array as $data)
  {
  #echo $data->attributes() . ": " . $data->count()  . "<br />";
  }
$HI=$data->count();

#公費のレコード枠を数える
foreach($xml->record->record->record->array[0]->record->array as $data)
  {
  #echo $data->attributes() . ": " . $data->count()  . "<br />";
  }
$PI=$data->count();


#患者基本情報の取得
foreach($xml->record->record->record->string as $data)
  {
  echo  $data->attributes() . ": " . $data . "<br />";
  }
foreach($xml->record->record->record->record->string as $data)
  {
   echo $data->attributes() . ": " . $data . "<br />";
  }

#保険情報の取得
      $a=0;
      while($a < $HI+1) {
        	 echo "<br />";
		#社会保険情報を取得
		foreach($xml->record->record->record->array->record[$a]->string as $data)
		{
			#要素が空白のときは出力しない
			if ($data != ""){
			echo $data->attributes() . ": " .$data."<br />";
			}
		}
		
		$b=0;		
		while($b < $PI+1) {
		#公費情報を取得
		foreach($xml->record->record->record->array->record[$a]->array->record[$b]->
string as $data)
 		{
			#要素が空白のときは出力しない
			if ($data != ""){
			echo $data->attributes() . ": " .$data."<br />";
			}
		}
		$b++;
		}
        $a++;
      }



?>
</body>
</html>
--------------------------------------------------------

*****************************************
*    ゆうえん医院                       *
*     めまい・難聴クリニック           *
*    〒700-0913                         *
*     岡山市北区大供3-1-18               *
*     KSB会館3階                   *
*    TEL 086-803-2567 FAX 086-803-2553  *
*    http://www.memai.info              *
*****************************************