Джаваскрипт знаю неплохо, проблем с работой калькулятора со стороны клиента не было, а вот как ексель читать-первый раз столкулся.Оказывается предельно просто
1)качаешь отсюда http://phpexcel.codeplex.com/ библиотеку
2)установка это банальное подключение в скрипте php
require_once 'Classes/PHPExcel.php';
require_once 'Classes/PHPExcel/IOFactory.php';
со всего скаченого мне понадобилось только папка Classes
3)все читаем ексель как простую таблицу
$url_xls="xlsx/sobol.xls";
$objPHPExcel = PHPExcel_IOFactory::load($url_xls);
$array=array();
foreach ($objPHPExcel->getWorksheetIterator() as $worksheet)
{
$highestRow = $worksheet->getHighestRow(); // например, 10
$highestColumn = $worksheet->getHighestColumn(); // например, 'F'
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
for($row=1;$row<=$highestRow;$row++)
{ $cell = $worksheet->getCellByColumnAndRow(0, $row);
$val = $cell->getValue();
$m=str_replace(" ","",$val);
if($m==$model)
{for ($col = 0; $col < $highestColumnIndex; ++ $col)
{$cell = $worksheet->getCellByColumnAndRow($col, $row);
$val = $cell->getValue();
$array[$row][$col]=$val;
}
}
}
}
4)после этого информацию браузеру я отправлял в виде объекта джонсон
$json=json_encode($array);
echo $json ;
вот результат
http://aleks.hol.es/cacl_avto/
с джаваскрипта для стилизации селектов использовал selectric https://github.com/lcdsantos/jQuery-Selectric
пишет что поддерживает IE7 и выше ..но у меня не работало в IE8, пришлось там отключать
if(version_IE()!=="IE8"){select.selectric();}
а вот функция для определения
function version_IE(){
var uagent = navigator.userAgent;
uagent = uagent.indexOf("MSIE");
// Если uagent не равен (-1) ie будет true
if(uagent != -1){
var ie = true;
// Создаем переменную vers, помещаем в нее значение строки navigator.userAgent
var vers = navigator.userAgent;
vers = vers.substr(uagent + 5, 2); //(!) коммент под примером
vers = parseInt(vers); // Преобразуем в целое число
};
// Теперь выполним проверку, вызываем соответствующий alert
if(ie){
return ("IE" + vers);
} else {
return false;
};
}
1)качаешь отсюда http://phpexcel.codeplex.com/ библиотеку
2)установка это банальное подключение в скрипте php
require_once 'Classes/PHPExcel.php';
require_once 'Classes/PHPExcel/IOFactory.php';
со всего скаченого мне понадобилось только папка Classes
3)все читаем ексель как простую таблицу
$url_xls="xlsx/sobol.xls";
$objPHPExcel = PHPExcel_IOFactory::load($url_xls);
$array=array();
foreach ($objPHPExcel->getWorksheetIterator() as $worksheet)
{
$highestRow = $worksheet->getHighestRow(); // например, 10
$highestColumn = $worksheet->getHighestColumn(); // например, 'F'
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
for($row=1;$row<=$highestRow;$row++)
{ $cell = $worksheet->getCellByColumnAndRow(0, $row);
$val = $cell->getValue();
$m=str_replace(" ","",$val);
if($m==$model)
{for ($col = 0; $col < $highestColumnIndex; ++ $col)
{$cell = $worksheet->getCellByColumnAndRow($col, $row);
$val = $cell->getValue();
$array[$row][$col]=$val;
}
}
}
}
4)после этого информацию браузеру я отправлял в виде объекта джонсон
$json=json_encode($array);
echo $json ;
вот результат
http://aleks.hol.es/cacl_avto/
с джаваскрипта для стилизации селектов использовал selectric https://github.com/lcdsantos/jQuery-Selectric
пишет что поддерживает IE7 и выше ..но у меня не работало в IE8, пришлось там отключать
if(version_IE()!=="IE8"){select.selectric();}
а вот функция для определения
function version_IE(){
var uagent = navigator.userAgent;
uagent = uagent.indexOf("MSIE");
// Если uagent не равен (-1) ie будет true
if(uagent != -1){
var ie = true;
// Создаем переменную vers, помещаем в нее значение строки navigator.userAgent
var vers = navigator.userAgent;
vers = vers.substr(uagent + 5, 2); //(!) коммент под примером
vers = parseInt(vers); // Преобразуем в целое число
};
// Теперь выполним проверку, вызываем соответствующий alert
if(ie){
return ("IE" + vers);
} else {
return false;
};
}
Комментариев нет :
Отправить комментарий