Autor Zpráva
Rellik
Profil
Zdravím,
potřebuju poradit s jednou věcí. Našel sem si script na otevření excelového dokumentu xlsx. Bohužel funguje pouze když je ten dokument poslán přes formulář. Já bych potřeboval aby se prostě jen otevřel když ho zadám "natvrdo" do toho scriptu. Upravil bych si to sám, ale s funkcemi v class nemám zkušenosti :( Poradí někdo jak to upravit aby to fungovalo? Zkoušel sem to podle mých znalostí nějak upravit, ale bohužel bez výsledku.
<html>

<head><title>PHP: Parse and Retrieve Data from XLSX Files | SPYROZONE.NET</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<style>
a{text-decoration:none;color:#0000FF;}
a:hover{text-decoration:underline;color:#0000FF;}
a:visited{text-decoration:none;color:#0000FF;}
a:active{text-decoration:none;position: relative;top: 1px;}
body{font-family: "Arial","Verdana","Lucida Sans Unicode"; font-size: 12pt;}
#datacontent{margin-left:20pt;}
#footer{font-size: 10pt; line-height:150%; margin-top:40; margin-bottom:0;text-align:center;}
#xlsxTable{font-size: 11pt;margin: 15px;text-align: left;border-collapse: collapse;}
#xlsxTable th{padding: 8px;font-weight: normal;font-size: 13px;color: #039;background: #A9A9A9;}
#xlsxTable td{padding: 8px;background: #E5E5E5;border-top: 1px solid #fff;color: #669;}
#xlsxTable tbody tr:hover td{background: #d0dafd;}
</style>
</head>
<body>
<h1>PHP: Parse and Retrieve Data from XLSX Files</h1>
<div id="datacontent">
<h2>Upload *.xlsx File:</h1>
<form method="post" enctype="multipart/form-data">
<p>File: <input type="file" name="file"  /><input type="submit" value="Parse" /></p>
</form>
</div>
<?php
if((!empty($_FILES["file"])) && ($_FILES['file']['error'] == 0)) {
	$fileName	= basename("2012.xlsx");
	$fileExt	= substr($fileName, strrpos($fileName, '.') + 1);

if (($fileExt == "xlsx")) {
		require_once "simplexlsx.class.php";
		$getWorksheetName = array();
		$xlsx = new SimpleXLSX( $_FILES['file']['tmp_name'] ); //tady to chce soubor z tempu který neexistuje když to není odeslané ???
		$getWorksheetName = $xlsx->getWorksheetName();
		echo '	<hr>
				<div id="datacontent">
		<h2>Měsíce:</h2><ul>
	';
		foreach ($getWorksheetName as $value) {
			echo '<li><a href="#'.$value.'">'.$value.'</a></li>
		';
		}
		echo '</ul>';
		echo '<h2>Výpis:</h2>
		<div id="datacontent">
	';
		for($j=1;$j <= $xlsx->sheetsCount();$j++){
			echo '<h3 id="'.$getWorksheetName[$j-1].'">Měsíc: '.$getWorksheetName[$j-1].'</h3>
		';
			echo '<table id="xlsxTable">
		';
			list($cols,) = $xlsx->dimension($j);
			//Prepare table
			foreach( $xlsx->rows($j) as $k => $r) {
				if ($k == 0){
					$trOpen		= '<th';
					$trClose	= '</th>';
					$tbOpen		= '<thead>';
					$tbClose	= '</thead>';
				}else{
					$trOpen		= '<td';
					$trClose	= '</td>';
					$tbOpen		= '<tbody>';
					$tbClose	= '</tbody>';
				}
				echo $tbOpen;
				echo '<tr>';
				for( $i = 0; $i < $cols; $i++)
					//Display data
					echo $trOpen.'>'."\n".( (isset($r[$i])) ? $r[$i] : '&nbsp;' ).$trClose;
				echo '</tr>
			';
				echo $tbClose;
			}
			echo '</table>
		';
		}
		echo '</div>';
		echo '
				</div>
				<hr>';
	}
}
?>
</body>
</html>

Script je ze stránek http://www.spyrozone.net/hacking/2011/05/php-parse-and-retrieve-data-from-xlsx-files.jsp
Díky za jakoukoliv radu
Rellik
Profil
Vyřešeno...
<?php
include 'simplexlsx.class.php';
$xlsx = new SimpleXLSX('2012.xlsx');
// output worsheet 1
$mesic = 0;
for($ix=1; $ix<=12; $ix++) 
	{
		$mesic++;
		list($num_cols, $num_rows) = $xlsx->dimension($mesic);
		echo '<h1>'.$mesic.' měsíc</h1>'."\n";
		echo '<table id="xlsxTable">';
		foreach( $xlsx->rows($mesic) as $k => $r)
		{
				if ($k == 0){
					$trOpen		= '<th';
					$trClose	= '</th>';
					$tbOpen		= '<thead>';
					$tbClose	= '</thead>';
				}else{
					$trOpen		= '<td';
					$trClose	= '</td>';
					$tbOpen		= '<tbody>';
					$tbClose	= '</tbody>';
				}
				echo $tbOpen;
				echo '<tr>';
				for( $i=0; $i < $num_cols; $i++ )
				{
						//Display data
						echo $trOpen.'>'."\n".((!empty($r[$i])) ? $r[$i] : '&nbsp;' ).$trClose;
				}
				echo '</tr>
			';
				echo $tbClose;
			}
		echo '</table>'."\n";
	}
?>

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0