実現したいこと
ページの表示不具合を解消したい
発生している問題・分からないこと
phpを推奨バージョンである8.1.22に切り替えたところ、ページの上部に不要なメッセージが表示されてしまいました。
メッセージ自体が何を示しているのかはわかるのですが、修正方法が一切わかりません。
中身はコインランドリーの稼働状況がリアルタイムで確認出来る動的ページです。
上部の不要なメッセージ表示があるだけでページとしては問題なく閲覧・動作出来ています。
まず自身の知識として、htmlやcssであればある程度わかるのですがphpは習得前になります。
また、そもそもソースコードは提供されたものであり、提供元も「おそらくかなり昔のコードでいつの担当者が作成したものかわからないし中身がわかる者は現在いない」という特殊な状況でした。
その際も表示不具合はありましたがなんとか使用出来るように手探りで無理やり直しています。
そのため本来不要なコードが残っているかもしれませんが判別すらも出来ません。
以上、無知で大変申し訳ありませんがよろしくお願い致します。
エラーメッセージ
error
1Warning: Undefined variable $isMobile in /*URL*/ファイル名.php on line 66 2 3Warning: Undefined variable $isMobile in /*URL*/ファイル名.php on line 75 4 5Warning: Undefined variable $isMobile in /*URL*/ファイル名.php on line 95
該当のソースコード
php
1ファイル名や社名などの部分は*で囲んだ代替テキストで記載していますがほぼそのままです。 2 3<?php 4// ↓この行はユーザーごとに変更が必要です。 5 $Kadou_Filename ="*ファイル.dat*"; 6// ↑この行はユーザーごとに変更が必要です。 7?> 8<? 9// ↓以下の行は変更しないでください。 10function CsvData_Load_ALL( $Filename ){ 11 if( file_exists($Filename) == 1 && $Filename != ""){ 12 $fp = fopen( $Filename, "r" ); 13 if( $fp != NULL ){ 14 $cntLine = 0; 15 while( 1 ){ 16 $read_buff = fgets( $fp, 4096 ); 17 if( $read_buff == NULL ){ 18 break; 19 } 20 $read_buff = str_replace( "\n", "", $read_buff ); 21 $read_buff = str_replace( "\r", "", $read_buff ); 22 23// 20200129-CHG-[S] 24// $csv_array[$cntLine] = $read_buff; 25// 26 // 文字コード変換(SJIS -> UTF-8) 27 $csv_array[$cntLine] = mb_convert_encoding( $read_buff, "UTF-8", "SJIS" ); 28// 20200129-CHG-[E] 29 $cntLine++; 30 } 31 // 読み込んだCSVファイルを各カラムに分解 32 for( $iline= 0 ; $iline < sizeof($csv_array) ; $iline++ ){ 33 $csv_column_array = explode( ",", $csv_array[$iline]); 34 for ( $cntCsv = 0 ; $cntCsv < sizeof($csv_column_array) ; $cntCsv++ ){ 35 $csv_data[$iline][$cntCsv] = $csv_column_array[$cntCsv]; 36 } 37 } 38 fclose( $fp ); 39 } 40 } 41 return $csv_data; 42} 43 /*アクセス端末チェック*/ 44 $agent = ""; 45 $isMobile; 46 47?> 48<? 49 // CSVファイルを読みます。 50 $kado_status = CsvData_Load_ALL( $Kadou_Filename ); 51 /************************************/ 52 /*$kado_status[0][0] 送信日時 "201011101416" */ 53 /*$kado_status[1][0] 空白行 */ 54 /*$kado_status[2][0] 送信間隔 "定期送信 5分間隔" */ 55 /*$kado_status[3][0] 空白行 */ 56 /*$kado_status[4][0] 店舗名称 "コインランドリー伊豆の国店" */ 57 /*$kado_status[5][0] 空白行 */ 58 /************************************* ここまではヘッダーです。 */ 59 60 /************************************* ここからがテーブルの中身です。 */ 61 /*$kado_status[$i][0] 機械番号 "99" */ 62 /*$kado_status[$i][1] 号機名称 "1号機" */ 63 /*$kado_status[$i][2] 機種名 "洗濯乾燥機 SF-222C" */ 64 /*$kado_status[$i][3] 稼働状況日本語 "運転" */ 65 /*$kado_status[$i][4] 稼働状況コード "01" */ 66 /*$kado_status[$i][5] 残り時間 "99" */ 67 /************************************/ 68 if($isMobile == false) { 69 $send_time = "<span> ".substr($kado_status[0][0],0,4)."/".substr($kado_status[0][0],4,2)."/".substr($kado_status[0][0],6,2)." ".substr($kado_status[0][0],8,2).":".substr($kado_status[0][0],10,2)." </span>現在"; 70 } else { 71 $send_time = " ".substr($kado_status[0][0],0,4)."/".substr($kado_status[0][0],4,2)."/".substr($kado_status[0][0],6,2)." ".substr($kado_status[0][0],8,2).":".substr($kado_status[0][0],10,2)." 現在"; 72 } 73?> 74<HTML> 75<HEAD> 76 <META HTTP-EQUIV="Content-Type" CONTENT="text/css; charset=Shift_JIS"> 77<? if($isMobile == false) { 78/*↓ここからはHEADER部のPC用テキストです。*/ ?> 79 <meta name="description" content="*メッセージ*" /> 80 <meta name="keywords" content="*キーワード*" /> 81 <meta name="copyright" content="*コピーライト*" /> 82 <title><?php echo $kado_status[4][0];?>空き情報</title> 83<?php 84 // 表の中のスタイルを定義しています。 85 include("*シート名.css*"); 86?> 87<? /*↑ここまではHEADER部のPC用テキストです。*/ 88 } else { 89/*↓ここからはHEADER部の携帯用テキストです。*/ ?> 90 <meta http-equiv="content-language" content="ja" /> 91 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 92 <title><?php echo $kado_status[4][0];?>空き情報</title> 93<? /*↑ここまではHEADER部の携帯用テキストです。*/ 94 } ?> 95</HEAD> 96<BODY> 97<? if($isMobile == false) { 98/*↓ここからはBODY部のPC用テキストです。*/ ?> 99<div id="container"> 100<div id="head" STYLE=" width: 430px;"> 101 <img class="logo" src="LOGO.gif" alt="" /><span class="logotext">コインランドリー空き情報</span> 102</div> 103<div id="title" STYLE=" width: 430px;"> 104 <?php echo $kado_status[4][0];?><br><?php echo $send_time;?> 105</div> 106<br> 107<DIV id="table" STYLE=" width: 430px;"> 108 <TABLE CLASS="List" width=100% cellspacing="0" cellpadding="0" > 109 <TR CLASS="List" width=100%> 110 <TH CLASS="List" width=90px > 111 機械番号 112 </TH> 113 <TH CLASS="List" width=90px > 114 稼動状况 115 </TH> 116 <TH CLASS="List" width=90px > 117 残り<BR> 118 運転時間 119 </TH> 120 <TH CLASS="List" width=160px > 121 機種名 122 </TH> 123 </TR> 124 125<? 126// ここからループです。 127// 読み込んだデータファイルの6行以降をテーブルに表示します。 128 $size_Kado = sizeof( $kado_status ) ; 129 $i = 6; 130 while( $i < $size_Kado){ 131 if((int)$kado_status[(int)$i][0] +0 == 0) break; 132?> 133 <TR CLASS="List"> 134 <TD CLASS="List" STYLE="text-align: left; padding: 0px 0px 0px 6px;"> 135 <?php 136 if( $kado_status[$i][0] < 10 ){ 137 echo " "; 138 } 139 echo $kado_status[$i][0]."号機"; 140 ?> 141 </TD> 142 <TD CLASS= 143 <?php 144 switch ($kado_status[$i][4]) { // 稼働状況コード 01-0x 145 case 0: 146 echo "List_Stop"; 147 break; 148 case 1: 149 echo "List_Run"; 150 break; 151 case 2: 152 echo "List_Err"; 153 break; 154 case 3: 155 echo "List_Stop"; 156 break; 157 case 4: 158 echo "List_Stop"; 159 break; 160 case 5: 161 echo "List_Check"; 162 break; 163 case 9: 164 echo "List_Err"; 165 break; 166 default: 167 echo "List_Run"; 168 } 169 ?> 170 > 171 <?php 172 if($kado_status[$i][4] == 3) 173 echo "--"; 174 else 175 echo $kado_status[$i][3]; // 稼働状況日本語 176 ?> 177 </TD> 178 <TD CLASS="List" STYLE="text-align: right; padding: 0px 6px 0px 6px;"> 179 <?php 180 // 残り運転時間 181 echo ( ($kado_status[$i][5]== 0 and $kado_status[$i][4] == 3) ? "-- 分" : $kado_status[$i][5]." 分" ); 182 ?> 183 </TD> 184 <TD CLASS="List" STYLE="text-align: left; padding: 0px 0px 0px 6px;"> 185 <?php 186 echo $kado_status[$i][2]; // 機種名称 187 ?> 188 </TD> 189 </TR> 190 <?php 191 $i++; 192 } // ループ終了。 193 ?> 194 </TABLE> 195</DIV> 196<br> 197<div class="coi_copyright"> 198 <p id="copyright"><img src="copyright.gif" alt="Copyright" /></p> 199</div> 200</div> 201<? /*↑ここまではBODY部のPC用テキストです。*/ 202 } else { 203/*↓ここからはBODY部の携帯用テキストです。*/ ?> 204 <div align="center"> 205 <img class="logo" src="LOGO.gif" alt="" />空き情報 206 </div> 207 <div align="center"> 208 <?php echo $kado_status[4][0];?><br> 209 <font color="red"> <?php echo $send_time;?> </font> 210 </div> 211 <hr> 212 <div> 213 <dl> 214<? // ここからループです。 215 $size_Kado = sizeof( $kado_status ) ; 216 $i = 6; 217 while( $i < $size_Kado){ 218 if($kado_status[$i][0] +0 == 0) break; 219 220 $disp = true; 221 $time = $kado_status[$i][5]."分"; 222 switch ($kado_status[$i][4]) { // 稼働状況コード 01-0x 223 case 0: 224 $font_color = ""; 225 $time = "00分"; 226 break; 227 case 1: 228 $font_color = "blue"; 229 break; 230 case 2: 231 $font_color = "red"; 232 $time = "--分"; 233 break; 234 case 3: 235 case 7: 236 $disp = false; 237 $font_color = ""; 238 $time = ""; 239 break; 240 default: 241 $font_color = "green"; 242 $time = "--分"; 243 break; 244 } 245 if($disp) { 246 echo "<dt>".$kado_status[$i][1]."</dt>"; 247 echo "<dd><font color =\"".$font_color."\">"; 248 echo $kado_status[$i][3]."</font> "; 249 echo $time." ".$kado_status[$i][2]; 250 echo "</dd>\r"; 251 } 252 $i++; 253 } 254 // ここまでループです。?> 255 </dl> 256 </div> 257 <hr> 258 <div align="center"> 259 copyright©2005-2020<br>*コピーライト* 260 </div> 261<? /*↑ここまではBODY部の携帯用テキストです。*/ 262 } ?> 263</BODY> 264</HTML> 265
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
同様の事例、解決策は見つけられませんでした。
補足
特になし
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/04/03 02:18
2024/04/03 02:48
2024/04/03 04:46
2024/04/03 08:15
2024/04/03 08:22