Version: 1.0

Type: Function

Category: File Management

License: Other

Description: This function allows you to make a HTML table from *.csv (Excel without "") divided into several pages, and you can change number of lines of the table with variable $numberrows. This table can be also a part of another page, and then you must use variable $calledfile (name of the "main page"), if you wanted to call the table itself then $calledfile = $targetfile. variable $soubor is the source file. I use also $tournament according to which I look for the name of the file with the table in data base and then include it into the main file.. I hope this is all. I'm sorry for my English.



<?PHP
function csv2table($soubor,$targetfile,$calledfile,$tournament,$numberrows,$tdclass,$tableclass,$pclass,$tablewidth)  {

$overall=0;
$cislostr=0;

$pocitadlo=0;



$podminkabeg="\n<?PHP\r\nif (\$pozice==";
$podminkaend=")    {\r\n "."?".">\r\n";
$headtable="<table width='".$tablewidth."' class='".$tableclass."'><tr>\r\n";
$endtable="</table>\r\n";

$formbackbeg="\n<table width=".$tablewidth."><tr><form method='GET' action='".$calledfile."'>\r\n<td width='50%'><input type='hidden' name='turn' value='".$tournament."'><input type='hidden' name='pozice' value='";
$formbackend="'><input type='submit' name='back' value='zpet'></form></td>\r\n";
$formnotback="\n<table width=".$tablewidth."><tr><td width='50%' align='left'></td>\n";

$formforwbeg="<td width='50%' align='right'><form method='GET' action='".$calledfile."'>\n<input type='hidden' name='turn' value='".$tournament."'><input type='hidden' name='pozice' value='";
$formforwend="'><input type='submit' name='forw' value='dopredu'></form></td>\n</tr></table>";
$formnotforw="\n<td width='50%'></td>\n</tr></form></table>\n";

$endofif="\n<?PHP\n\r }\n "."?".">\n";
$attempt1="\n<?PHP\n\rif (\$pozice<0 or \$pozice>";
$attempt2=")   {\n\recho('Bohuel, chyba v prov skriptu');   }"."?".">\n";
//jadro funkce

if (!file_exists($soubor)) {
echo "chyba neexistence souboru ".$soubor;
return FALSE;
}
if (!$fileread=fopen($soubor,"r")) {
echo "chyba neotevreni souboru ".$soubor;
return FALSE;
}
if (!$filewritten=fopen($targetfile,"w")) {
echo "chyba neotevreni souboru k zapisu -".$soubor;
return FALSE;
}

 while (!feof($fileread))  {
$overall++;
$forward=$cislostr+1;
$back=$cislostr-1;
$pocitadlo++;
   if ($pocitadlo==1) {
	fwrite($filewritten,$podminkabeg.$cislostr.$podminkaend.$headtable);
   }      
   fwrite($filewritten,"<tr>\n");
    $line=fgets($fileread, filesize($soubor));
	
	$word=strtok($line,";");
	while ($word)  {
	fwrite($filewritten,"<td class='".$tdclass."'>".$word."</td>\n");
	$word=strtok(";");
	}
      fwrite($filewritten,"</tr>\n");
   
   if ($pocitadlo==$numberrows) {
	if ($cislostr==0) {
	 	fwrite($filewritten,$endtable.$formnotback.$formforwbeg.$forward.$formforwend);
		fwrite($filewritten,$endofif);
  		
		$pocitadlo=0;
		}
	else {
		fwrite($filewritten,$endtable.$formbackbeg.$back.$formbackend.$formforwbeg.$forward.$formforwend);
		fwrite($filewritten,$endofif);
        
		$pocitadlo=0;

		  }
	$cislostr++;
	
}

}
if ($cislostr==0)  {
fwrite($filewritten,$endtable);
		fwrite($filewritten,$endofif);
		fwrite($filewritten,$attempt1.$cislostr.$attempt2);
		fclose($filewritten);
		fclose($fileread);
echo $overall;
return $overall;
}
		fwrite($filewritten,$endtable.$formbackbeg.$back.$formbackend.$formnotforw);
		fwrite($filewritten,$endofif);
		fwrite($filewritten,$attempt1.$cislostr.$attempt2);
		fclose($filewritten);
		fclose($fileread);
echo $overall;
return $overall;
}
?>