■ファイルについて
・ファイル形式は「テキスト」のみです。

1.ファイルを選択して「アップロード」をクリックします。

ドラッグ&ドロップ

'.$up_check.'

'; $messagetext = ''; /** * ファイル数分まわして処理 * */ if(!empty($_FILES['up_file']['tmp_name'][0])){ for ($i=0; $i 1000000) { // throw new RuntimeException('ファイルサイズが大きすぎます'); // } // $_FILES['up_file']['mime']の値はブラウザ側で偽装可能なので // MIMEタイプに対応する拡張子を自前で取得する // TXTだけ if (!$ext = array_search( mime_content_type($_FILES['up_file']['tmp_name'][$i]), array( 'application/vnd.ms-excel', 'text/plain', 'text/csv', 'text/tsv' ), true )) { throw new RuntimeException('ファイル形式が「txt」ではありません。'); } // ファイル保存する $path_file = $uploaddir.$save_dirname."/".$_FILES['up_file']['name'][$i]; $path_dir = $uploaddir.$save_dirname."/"; if(!file_exists($path_dir)){ mkdir($path_dir , 0775); if(move_uploaded_file($_FILES['up_file']['tmp_name'][$i], $path_file)){ /*保存 正常OK*/ }else{ /*保存 失敗エラー時*/ throw new RuntimeException('保存に失敗しました。'); } // throw new RuntimeException('ファイル名を見直してください。'); } elseif(move_uploaded_file($_FILES['up_file']['tmp_name'][$i], $path_file)){ /*保存 正常OK*/ }else{ /*保存 失敗エラー時*/ throw new RuntimeException('保存に失敗しました。'); } // ファイルのパーミッションを確実に0666に設定する chmod($path_file, 0666); $messagetext = '正常にアップロードされました'; } catch (RuntimeException $e) { $messagetext = $_FILES['up_file']['name'][$i].':'.$e->getMessage(); } /**************例外処理群 おわり************/ } } } echo $messagetext; } /* テキストデータ 配列で返す */ function txt_return_Func($filename,$time){ global $uploaddir; $csv_return = array(); setlocale(LC_ALL, 'ja_JP.UTF-8'); if(empty($filename))return $txt_return; date_default_timezone_set('Asia/Tokyo'); $day = date('Ymd'); //ファイルパス設定 $filepath = $uploaddir . '' . $filename . '/' . $filename . '_' . $time. '_' . $day . ".txt" ; //変換後のUTF8ファイルを一時的に書き出し $filepath_utfed = $uploaddir . '/' . $filename . '/' . $filename . '_' . $time . '_' . $day . "_utfed.txt" ; //ファイルを読み込む if(!file_exists($filepath))return; $fileContent = file_get_contents($filepath); //UTF8へ変換 $fileContent = mb_convert_encoding($fileContent, 'UTF-8', 'sjis-win'); //ファイルの読み書き $fp = fopen($filepath_utfed, 'w'); // fwriteで文字列を書き込む fwrite($fp, $fileContent); // ファイルを閉じる(書き出し) fclose($fp); //ファイルのパーミッションを変更 system('chmod 0666 '.$filepath_utfed); $file = new SplFileObject($filepath_utfed); $file->setFlags(SplFileObject::READ_CSV); $file->setCsvControl(','); foreach($file as $line){ //終端の空行を除く処理 if(!is_null($line[0])){ //mb_convert_variables("utf-8", "utf-8", $line); $txt_return[] = $line; } } return $txt_return; } /* 買い目 */ function kaime_func($attr){ global $uploaddir; date_default_timezone_set('Asia/Tokyo'); $day = date('Ymd'); $yesterday = date('Ymd',strtotime("now -24 hours")); extract(shortcode_atts(array( "filename" => "", "time" => "" ), $attr)); $result = ""; $pchtml = ""; $sphtml = ""; $txtdata = array(); if(empty($filename))return; /*txtデータ 配列*/ $txtdata = txt_return_Func($filename,$time); $filepath_utfed = $uploaddir . $filename . '/' . $filename . '_' . $time . '_' . $day . "_utfed.txt" ; $yesterdayfilepath = $uploaddir . $filename . '/' . $filename . '_' . $time . '_' . $yesterday . ".txt" ; $yesterdayfilepath_utfed = $uploaddir . $filename . '/' . $filename . '_' . $time. '_' . $yesterday . "_utfed.txt" ; // echo $filepath_utfed; if(!file_exists($filepath_utfed))return; if(file_exists($yesterdayfilepath)){ unlink($yesterdayfilepath); } if(file_exists($yesterdayfilepath_utfed)){ unlink($yesterdayfilepath_utfed); } if(is_array($txtdata)){ // $count = 0; $html .= ' '; // $sphtml .= '
'; foreach ($txtdata as $txtdata_key => $txtdata_value) { $htmlbefore=""; $htmlafter=""; $replace = $txtdata_value[0]; if(strpos($replace,'http') !== false){ $replace= trim($replace); $replace = str_replace(array(" ", " "), "", $replace); } elseif(strpos($replace,'====場名開始') !== false){ $replace = str_replace('====場名開始', '
', $replace); } elseif(strpos($replace,'====場名終了') !== false){ $replace = str_replace('====場名終了', '
', $replace); } elseif(strpos($replace,'====レースグレード開始') !== false){ $replace = str_replace('====レースグレード開始', '
', $replace); } elseif(strpos($replace,'G') !== false || strpos($replace,'F') !== false ){ switch ($replace){ case 'GP': $gradeCSS="gp"; break; case 'GI': $gradeCSS="gi"; break; case 'GII': $gradeCSS="gii"; break; case 'GIII': $gradeCSS="giii"; break; case 'FI': $gradeCSS="fi"; break; case 'FII': $gradeCSS="fii"; break; case 'FIII': $gradeCSS="fiii"; break; default: $gradeCSS="defaultGrade"; break; } $replace ='' . $replace .''; } elseif(strpos($replace,'====レースグレード終了') !== false){ $replace = str_replace('====レースグレード終了', '
', $replace); } elseif(strpos($replace,'====レース日開始') !== false){ $replace = str_replace('====レース日開始', '
', $replace); } elseif(strpos($replace,'====レース日終了') !== false){ $replace = str_replace('====レース日終了', '
', $replace); } elseif(strpos($replace,'====レース番号開始') !== false){ $replace = str_replace('====レース番号開始', '
', $replace); } elseif(strpos($replace,'#R') !== false ){ $replace ='' . str_replace('#', '', $replace) .''; } elseif(strpos($replace,'====レース番号終了') !== false){ $replace = str_replace('====レース番号終了', '
', $replace); } elseif(strpos($replace,'====出走時間開始') !== false){ $replace = str_replace('====出走時間開始', '
', $replace); } elseif(strpos($replace,':') !== false ){ $replace ='出走時間 ' . $replace .''; } elseif(strpos($replace,'====出走時間終了') !== false){ $replace = str_replace('====出走時間終了', '
', $replace); } elseif(strpos($replace,'====二連単開始') !== false){ $replace = str_replace('====二連単開始', '

2連単

', $replace); } elseif(strpos($replace,'====二連単終了') !== false){ $replace = str_replace('====二連単終了', '
', $replace); } elseif(strpos($replace,'====三連単開始') !== false){ $replace = str_replace('====三連単開始', '

3連単

', $replace); } elseif(strpos($replace,'====三連単終了') !== false){ $replace = str_replace('====三連単終了', '
', $replace); } elseif(strpos($replace,'====コメント開始') !== false){ $replace = str_replace('====コメント開始', '

', $replace); } elseif(strpos($replace,'====コメント終了') !== false){ $replace = str_replace('====コメント終了', '

', $replace); } elseif(strpos($replace,'====リンク開始') !== false){ $replace = str_replace('====リンク開始', '
', $replace); } elseif((strpos($replace,'====的中率開始') !== false)||(strpos($replace,'_percent') !== false)||(strpos($replace,'====的中率終了') !== false)){ $replace = ''; } elseif(preg_match( "/[ぁ-ん]+|[ァ-ヴー]+|[一-龠]/u", $replace) ){ } else{ $replace = str_replace(' ', '', $replace); $replace = str_replace('=', '=', $replace); $replace = str_replace('-', '-', $replace); $replace = str_replace('1', '1', $replace); $replace = str_replace('2', '2', $replace); $replace = str_replace('3', '3', $replace); $replace = str_replace('4', '4', $replace); $replace = str_replace('5', '5', $replace); $replace = str_replace('6', '6', $replace); $replace = str_replace('7', '7', $replace); $replace = str_replace('8', '8', $replace); $replace = str_replace('9', '9', $replace); $htmlbefore = '
' ; $htmlafter = '
' ; } $html .= $htmlbefore.$replace.$htmlafter ; // if($count === 3){ // $pchtml .= '
'; // $sphtml .= ''; // $count = 0; // } } // if(!empty($pchtml) && !empty($sphtml)){ // $pchtml .=' //
// //
// '; // $html .= ''; $result .= '
' . $html . '
'; // $sphtml .=' //
// //
// '; // // $sphtml .= ''; // $result .= $sphtml; // } } return $result; } add_shortcode('kaime', 'kaime_func');