[PHP-users 15586]ファイルの終端ででエラー表示
野口 亨
noguchi @ omika.jsdi.net
2003年 5月 31日 (土) 17:49:38 JST
いつもお世話になっております。
野口@JSDです。
添付したファイルを実行すると以下のエラーが出ます。
Parse error: parse error, unexpected $ in /home/saigaiman/web/System/User_ExcelAdd.php on line 263
ところが、指定された行はPHPファイルの終端です。
自分の見たところ、特に構文でおかしなところはありません。
どこがいけないか、どういったときにこういうエラーがでるのか、
わかる方がいらっしゃたら、教えてください。
以下に、全文を示します。
ここから<--
<?php
//================================================================================
// マニュアル外部編集機能 - Excel表示機能
// User_ExcelAdd.php
// 2003.05.28 Noguchi
//================================================================================
if(get_magic_quotes_gpc()==1){ //get_magic_quotes_gpcがOn
$userfile = stripslashes($HTTP_POST_VARS['userfile']); //Excelファイル
}else{ //get_magic_quotes_gpcがOff
$userfile = $HTTP_POST_VARS['userfile']; //Excelファイル
}
$EntryFlg = $HTTP_POST_VARS['EntryFlg']; //処理モード
$SyoriMode = $HTTP_POST_VARS['SyoriMode']; //処理モード
if ($SyoriMode == 0) {
//<<< 桁数チェック等
$Ret = Excel_Check();
//エラー表示用テーブルデータ数設定
$i = count($ErrTbl);
//エラーありか?
if ($i > 0) {
//<<< --------------------------【チェック異常の時】
//<<< ヘッダー表示
WriteHeader();
//<<< HTMLエラー表示(エラー一覧)
ErrPostForm();
//<<< 異常:エラー表示用ASP起動
Submit1();
//<<< フッター表示
WriteFooter();
}else{
//<<< --------------------------【チェック正常の時】
//<<< ヘッダー表示
WriteHeader();
//<<< POSTフォーム生成
$Ret = MasterAdd();
if ($Ret == 1){
?>
<SCRIPT LANGUAGE="VBS">
<!-- ブラウザ側のスクリプト
MsgBox "マスタ登録に失敗しました。", vbCritical + vbOKOnly, "マニュアルデータ外部作成機能"
window.close
//-->
</SCRIPT>
<?php
}else{
?>
<SCRIPT LANGUAGE="VBS">
<!-- ブラウザ側のスクリプト
MsgBox "マスタ登録しました。", vbInformation + vbOKOnly, "マニュアルデータ外部作成機能"
window.close
//-->
</SCRIPT>
<?php
//<<< フッター表示
WriteFooter();
}
}
// ---------------------------<<< ヘッダー表示
function WriteHeader(){
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<META name="GENERATOR" content="IBM WebSphere Homepage Builder V6.0.0 for Windows">
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<META http-equiv="Content-Style-Type" content="text/css">
<title>ユーザデータ登録機能</title>
<SCRIPT type="text/javascript" SRC="../Common.JS"></SCRIPT>
<SCRIPT type="text/javascript">
<!--
if (getBrowserName()!="Explorer"){
alert("Microsoft Internet Explorer Ver5.5SP2以降のブラウザ(Windows)にのみ対応してます。");
// history.back();
}else if(getBrowserVersion() < 5){
alert("Microsoft Internet Explorer Ver5.5SP2以降のブラウザ(Windows)にのみ対応してます。");
// history.back();
}else if(getOSType() != "Windows"){
alert("Microsoft Internet Explorer Ver5.5SP2以降のブラウザ(Windows)にのみ対応してます。");
// history.back();
}
// ウィンドウ初期表示
w = 340; h = 150;
//resizeTo(550, 320);
//resizeTo(340, 150);
//moveTo((screen.availWidth-w)/2, (screen.availHeight-h)/2);
//-->
</SCRIPT>
</head>
<body BGCOLOR="#FFFFFF">
<?php
}
// ---------------------------<<< フッター表示
function WriteFooter(){
?>
</body>
</HTML>
<?php
}
// ---------------------------<<< POSTフォーム生成
function PostForm(){
?>
<FORM Method='POST' id=form1 name=FileForm action="User_ExcelRead.php">
<TABLE border="0" width="95%" cellpadding="4" cellspacing="0">
<TBODY>
<TR>
<TD>
<INPUT NAME="userfile" TYPE="hidden" size="60" value="<?php global $userfile; print($userfile); ?>">
<INPUT NAME="EntryFlg" TYPE="hidden" size="60" value="<?php global $EntryFlg; print($EntryFlg); ?>">
<Input Type="hidden" Name="SyoriMode" Value="1"></TD><BR>
</TR>
</TABLE>
</FORM>
<?php
}
// ---------------------------<<< POSTフォーム生成(HTMLエラー一覧))
function ErrPostForm(){
global $ErrTbl;
?>
<FORM Method='POST' id=form1 name=ErrForm action="User_Err.php">
<TABLE border="0" width="95%" cellpadding="4" cellspacing="0">
<TBODY>
<?php
//エラー表示
for ($i = 1; i <= count($ErrTbl); $i++){
?>
<TR>
<TD><INPUT NAME="ErrDisp" TYPE="hidden" size="60" value="<?php print($ErrTbl[$i]); ?>">
<Input Type="hidden" Name="SyoriMode" Value="1"></TD><BR>
</TR>
<?php
}
?>
</TABLE>
</FORM>
<?php
}
// ---------------------------<<< 異常:エラー表示用ASP起動
function Submit1(){
?>
<SCRIPT type="text/javascript">
<!--
//alert("異常:エラー表示用ASP起動(MEdit_Err.asp)")
//画面クローズ
if (window.closed == false) {
window.close();
}
parent.subWin_ExcelErr = true;
w = 950; h = 500;
var winopt = "width="+ w +",height="+ h +",left="+ (screen.availWidth-w)/2 +",top="+ (screen.availHeight-h)/2;
winopt += ",location=no,menubar=no,toolbar=no,status=no,resizable=nos,scrollbars=yes,directories=no,titlebar=no";
parent.subWin_ExcelErr = window.open("blank.htm", "subWin_ExcelErr", winopt);
document.ErrForm.action = "User_Err.php";
document.ErrForm.target = "subWin_ExcelErr";
document.ErrForm.submit();
parent.subWin_ExcelErr.focus();
//-->
</SCRIPT>
<?php
}
// ---------------------------<<< 正常:登録用ASP起動
function Submit2(){
?>
<SCRIPT type="text/javascript">
<!--
//alert("正常:登録用ASP起動(MEdit_ExcelAdd.asp)")
//画面クローズ
if (window.closed == false) {
window.close();
}
parent.subWin_Excel = true;
w = 340; h = 150;
var winopt = "width="+ w +",height="+ h +",left="+ (screen.availWidth-w)/2 +",top="+ (screen.availHeight-h)/2;
winopt += ",location=no,menubar=no,toolbar=no,status=no,resizable=nos,scrollbars=no,directories=no,titlebar=no";
//parent.subWin_Excel = window.open("Toroku_msg.htm", "subWin_Excel", winopt);
parent.subWin_Excel = window.open("Check_msg.htm", "subWin_Excel", winopt);
document.FileForm.action = "MEdit_ExcelRead.asp";
document.FileForm.target = "subWin_Excel";
document.FileForm.submit();
parent.subWin_Excel.focus();
//-->
</SCRIPT>
<?php
}
// ---------------------------<<< 桁数チェック等
function Excel_Check(){
$Err_sw = 0;
//ユーザID取得
global $ExlUserID;
$ExlUserID = $HTTP_POST_VARS['ExlUserID'];
for ($i = 0 ; $i < count($ExlUserID) ; $i++){
$strName = "ユーザID";
if (LenChk($ExlUserID[$i], $strName, 20, $i, 1) == 1){
$Err_sw = 1;
}
}
return $Err_sw;
}
// --------------------------- <<< 基本マニュアルテーブル登録。
function MasterAdd(){
$ErrSw = 1;
return $ErrSw;
}
// --------------------------- <<< 桁数チェック。
function LenChk($StrArg1, $StrArg2, $IntArg1, $Cnt1, $HissuFlg){
global $ErrTbl;
if ($HissuFlg == 1){
if (strlen($StrArg1) == 0){
//$intX = count($ErrTbl);
$Cnt = $Cnt1 + 4;
$ErrTbl[] = $Cnt . '行目:項番[' . $Cnt1 . ']の' . $StrArg2 . '項目は必須です。';
$ErrSw = 1;
return $ErrSw;
}
}
if (strlen($StrArg1) > $IntArg1){
//$intX = count($ErrTbl);
$Cnt = $Cnt1 + 4;
$ErrTbl[] = $Cnt . '行目:項番[' . $Cnt1 . ']の' . $StrArg2 . '項目が文字数オーバーです。" . $IntArg1 . "文字に減らしてください。';
$ErrSw = 1;
}else{
$ErrSw = 0;
}
return $ErrSw;
}
?>
-->ここまで
以上、よろしくお願いします。
♪〜〜♪〜〜♪〜〜♪〜〜♪〜〜♪〜〜♪〜〜♪
日本システムディベロップメント株式会社
社会システム開発グループ
野口 亨
E-Mail: noguchi @ omika.jsdi.net
TEL: 0294-53-9490 FAX: 0294-54-2280
URL: http://www.jsdi.net/
♪〜〜♪〜〜♪〜〜♪〜〜♪〜〜♪〜〜♪〜〜♪
PHP-users メーリングリストの案内