みなさん、こんにちは:D PHPExcel の背後にある式 (Excel ドキュメント内) を保護するにはどうすればよいですか?
HTMLフォームを使用してユーザー入力値をPOSTし、PHPにExcelドキュメントから式を取得させ、そのユーザー入力値で計算してから、計算の答えをユーザーに返します。数式は HTML や PHP スクリプトではなく、すべて Excel ドキュメント内にあります。
Excel ドキュメントの数式を保護するにはどうすればよいですか? ftp の Excel ドキュメントのファイル許可を 400 に設定しました (グループとパブリックの読み取り、書き込み、実行許可なし、所有者は読み取り許可のみ) ため、一般ユーザーはそれらをダウンロードできません。しかし、この保護は十分でしょうか? これらの Excel ドキュメント内の数式を読み取る他の方法はありますか?
疑問に思っている方のために説明すると、この Excel ドキュメント内の数式は次のとおりです=IF(A1>0,"Greater than Zero",IF(A1<0,"Less than Zero","Equals Zero"))
。この数式は私が保護したいものです。これは誰にも見られたくないものです。もちろん、サーバーにアクセスできる人は例外です。
HTML フォーム スクリプト
<form action="./FirstInteraction.php" method="post">
Input A1: <input type="number" name="A1">
<input type="submit">
</form>
PHP スクリプト: FirstInteraction.php
/** Include path **/
set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/');
/** PHPExcel_IOFactory */
include 'PHPExcel/IOFactory.php';
/** Load Excel File **/
$inputFileName = './TrueFalse.xlsx';
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
/** Change A1 Value **/
$objPHPExcel->getActiveSheet()->setCellValue('A1',$_REQUEST["A1"]);
/** Calculate and State B1 Value **/
echo "<br> It is ".$objPHPExcel->getActiveSheet()->getCell('B1')->getCalculatedValue();