使用密码在线访问excel工作表行

时间:2015-10-14 21:25:23

标签: excel phpexcel excel-2013

我有一个excel文件,我班上的每个学生都有超过100行。每行都有一个学生的当前点,并以他的firstname_lastname命名。我想知道我如何能够上网并允许每个学生只使用密码或其他东西访问他的行。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可以将所有数据保存在Excel文件中。但你必须思考,这个想法有多好。我在这里举个例子。

这里我有1234.xls文件,如下所示。

Excel view

名称是名称,pass是访问的密码,数据是受保护的数据。

这是用于发送学生姓名和密码的html表单。

<form action="phpfile.php" method="post">
<input type="text" name="student" />
<input type="text" name="passcode" />
<input type="submit" />
</form>

这里是phpExcel的php代码。我使用1.8版。我认为这些评论将清除您的疑虑,如果有的话。

<?php
if(isset($_POST['student']))
{
require_once 'PHPExcel-1.8/Classes/PHPExcel.php';
$inputFileName = './1234.xls';
try {
    $inputFileType = PHPExcel_IOFactory::identify($inputFileName);
    $objReader = PHPExcel_IOFactory::createReader($inputFileType);
    $objPHPExcel = $objReader->load($inputFileName);
} catch(Exception $e) {
    die('Error loading file "'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage());
}
$sheet = $objPHPExcel->getSheet(0); 
$highestRow = $sheet->getHighestRow(); 

$student = $_POST['student'];
$pass = $_POST['passcode'];

for ($row = 1; $row <= $highestRow; $row++)    //get all rows of name
{
    $rowData = $sheet->getCell('A'.$row)->getValue();
    if($rowData == $student)  //compare with user input
        {
        $passcode = $sheet->getCell('B'.$row)->getValue();   //get passcode of same student
        if($passcode == $pass)   //compare pass
            {
            $accessdata = $sheet->getCell('C'.$row)->getValue();  //get data
            echo $accessdata; 
            break;
            }
        }
}
}
?>