2015-02-09 2 views
0

Я хочу, чтобы экспортировать MySQL таблицу с именем «lokasi», чтобы преуспеть, но эти ошибки я получаю:PHPExcel ошибка: Не определено индекс

Notice: Undefined index: no_lokasi in C:\xampp\htdocs\inventory\pages\report.php on line 14

Notice: Undefined index: nama_lokasi in C:\xampp\htdocs\inventory\pages\report.php on line 15

Notice: Undefined index: keterangan_lokasi in C:\xampp\htdocs\inventory\pages\report.php on line 16

Notice: Undefined index: no_lokasi in C:\xampp\htdocs\inventory\pages\report.php on line 14

Notice: Undefined index: nama_lokasi in C:\xampp\htdocs\inventory\pages\report.php on line 15

и вот мой код:

<?php 
    if($_SESSION["role"]!=1){ 
     header('location:login.php'); 
    } 
    else { 
     require_once dirname(__FILE__) . '\..\bower_components\phpexcel\Classes\PHPExcel.php'; 

     if(isset($_POST["submit"])){ 

      $objPHPExcel = new PHPExcel(); 
      $objWorksheet = $objPHPExcel->setActiveSheetIndex(0); 

      $result = mysql_query("SELECT * FROM lokasi",$conn); 

      $rowCount= 1; 
      while($row=mysql_fetch_row($result)){ 
       $objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowCount, $row['no_lokasi']); 
       $objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowCount, $row['nama_lokasi']); 
       $objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowCount, $row['keterangan_lokasi']);    
       $rowCount++; 
      } 

      $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); 
      $objWriter->save('some_excel_file.xlsx'); 
     } 
?>  
     <div class="row"> 
      <div class="col-lg-12"> 
       <h1 class="page-header">Print Preview</h1> 
      </div> 
     </div> 
     <div class="row"> 
      <div class="col-lg-12"> 
       <div class="panel panel-default"> 
        <div class="panel-body"> 
         <div class="dataTable_wrapper"> 
          <table class="table table-striped table-bordered table-hover" id=""> 
           <thead> 
            <tr> 
             <center> 
              <th>Nama Lokasi</th> 
              <th>Keterangan</th> 
              <th>Action</th> 
             </center> 
            </tr> 
           </thead> 
           <tbody> 
           <?php 
            $result = mysql_query('SELECT * from lokasi'); 
            while($list = mysql_fetch_row($result)){ 
             echo' 
              <tr class="odd gradeA"> 
               <td>'.$list[0].'</td> 
               <td>'.$list[1].'</td> 
               <td>'.$list[2].'</td>  
              </tr>   
             '; 
            } 
           ?>            
           </tbody> 
          </table> 
         </div> 
         <div class="row"> 
          <div class="col-lg-6"> 
           <form role="form" method="post"> 
            <button type="submit" class="btn btn-primary" name="submit">Submit</button> 
           </form> 
          </div> 
         </div> 
        </div> 
       </div> 
      </div> 
     </div> 
<?php 
    }; 
?> 
+0

Разве это не очевидно? проверьте содержимое результата запроса. –

+0

Кажется, что у вас нет этих столбцов в таблице. –

ответ

0

вы используете mysql_fetch_row, чтобы принести результаты, и вы индексировать, как это изменение

while($row=mysql_fetch_row($result)){ 
       $objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowCount, $row['no_lokasi']); 
       $objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowCount, $row['nama_lokasi']); 
       $objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowCount, $row['keterangan_lokasi']);    
       $rowCount++; 
} 

это

while($row=mysql_fetch_row($result)){ 
       $objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowCount, $row[0]); // to corresponding row indexes 
       $objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowCount, $row[1]); 
       $objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowCount, $row[2]);    
       $rowCount++; 
} 

Поскольку функция mysql_fetch_row() извлекает одну строку из набора результатов и возвращает ее как перечисляемый массив.

+0

Спасибо за помощь: D – Oiy