php代码在IE 8上不起作用

时间:2014-04-18 11:21:49

标签: javascript php jquery html css

已解决:: <div id="slideshow"> <?php echo implode(' ',$images); ?> </div> TO >>> <div id="slideshow"> <div> <?php echo implode(' ',$images); ?> </div> </div>

我的html / php代码在所有新版本的浏览器中运行(chrome,firefox,IE 11 ......),但是当我尝试让它在IE 8上运行时,它无法正常运行!它实际上是一个非常简单的代码我在excel文件中搜索他们的生日日期=今天的日期的某些用户。然后以幻灯片形式获取他们的照片。

这是代码:

<?php
/** Include path **/
set_include_path(get_include_path() . PATH_SEPARATOR . 'Classes/');
/** PHPExcel_IOFactory */
include 'PHPExcel/IOFactory.php';

$goal = date ('d/m');
$row_counter=0;
$images = array();
$names = array();
$exists_counter=0;

try{
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load("employe.xlsx");
$objWorksheet = $objPHPExcel->getActiveSheet();

foreach ($objWorksheet->getRowIterator() as $row) {
$cellIterator = $row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(false);
$row_counter++;
$bday = $objWorksheet->getCellByColumnAndRow(21,$row_counter)->getFormattedValue();
$ToCompare =substr($bday, 0, 5);
// foreach ($cellIterator as $cell){
if ($goal== $ToCompare){
$name = $objWorksheet->getCellByColumnAndRow(1,$row_counter)->getFormattedValue();
$sex = $objWorksheet->getCellByColumnAndRow(4,$row_counter)->getFormattedValue();
$id = $objWorksheet->getCellByColumnAndRow(0,$row_counter)->getFormattedValue();
$imagename = 'imgs/'.$id.'.jpg';

  if (file_exists($imagename)){
       $images[]='<left><img id='.$exists_counter.' src="imgs/'.$id.'.jpg"  align="middle" border=1 height="470" width="310">BONNE ANNIVERSAIRE!<br> '.$name.'</left><br>';
    }else{
    if($sex== "m" or $sex== "M"){

    $images[]='<left><img id='.$exists_counter.' src="imgs/male.jpg" align="middle" border=1 height="470" width="310">BONNE ANNIVERSAIRE!<br>'.$name.'</left><br>';
    }else{
    $images[]='<left><img id='.$exists_counter.' src="imgs/female.jpg" align="middle" border=1 height="470" width="310">BONNE ANNIVERSAIRE!<br>'.$name.'</left><br>';
    }       
} 
$exists_counter++;
  }
 }
  }catch(Exception $e){
  echo 'MERCI DE VERIFIER l’INTEGRITE DU FICHIER Excel!!! ', "\n";
  }
 ?>
 <!DOCTYPE html>
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 <title>Birthday Slider</title>

 <style type="text/css">
 #slideshow{
width: 312px;
height: 550px;
    overflow: hidden;
background-image: url(imgs/loader.gif);
background-repeat: no-repeat;
 }
 </style>
 <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
 <script src="http://code.jquery.com/jquery-migrate-1.1.1.js"></script>
 <script src="http://cdn.wideskyhosting.com/js/jquery.cycle.js"></script>
 <script type="text/javascript">
$("document").ready(function(){
    $("#slideshow").cycle({ 
 fx:      'custom', 
 sync: 0, 
 cssBefore: {  
    top:  0, 
    left: 320, 
    display: 'block' 
 }, 
 animIn:  { 
    left: 0 
 }, 
 animOut: {  
    top: 550 
 }, 
 delay: 0,
 timeout: 6500
 });
 })
 </script>
 </head>
 <body style="font-family: Arial, Sans-serif, sans;">
<div id="slideshow">
    <?php echo implode(' ',$images); ?>
</div>
 </body>
 </html>

1 个答案:

答案 0 :(得分:1)

正如其他人已经提到的,php与您的浏览器无关。 尝试打开浏览器的控制台(IE 8),看看是否有任何javascript语法错误。

这是一个关于如何使用IE8调试javascript的链接 link

修改

您正在使用DOM中不存在的无关的标记。 IE8在HTML标记方面非常敏感,因此它不会显示或显示您的HTML代码但有错误。 尝试删除这些标记并使用CSS对齐图像。