View file load.php

File size: 6.79Kb
<?php 
$mt=microtime(1);
require_once('config.php');
require_once('shapka.php');
require_once('func.php');
include('pclzip.lib.php');
include('function.php');
$fid=intval($_GET['file']);
$result=mysql_query("SELECT * from `filelib` WHERE `fid`='$fid'")or die(mysql_error());
if(!mysql_num_rows($result))
print 'Файла не существует<br />';
else
	{
	$fl=mysql_fetch_assoc($result);
	$filename="$maindir/$fl[filename]";
	if(!file_exists($filename))
	{
	mysql_query("DELETE from `filelib` WHERE `fid`='$fid'");
	print 'Файла не существует<br />';
	}
	else
		{
		$file=file($filename);
		$namef=htmlspecialchars($file[$namestr]);
		if($encoding)
		$namef=iconv($encoding, 'utf-8', $namef);
		print "Статья: $namef<br />";
		if(!isset($_GET['act']))
			{
			$ses=session_id();
			print '
</div><form id="FormName" action="load.php?act=do&amp;file='.$fid.'" method="post" name="FormName"><div>Формат:<br /><select name="format">
<option value="1">Java-книга</option>
<option value="2">Zip-архив</option>
<option value="3">Текстовый файл</option></select><br />
Введите код на картинке:<br />
<img src="imgkod.php?ses='.$ses.'" alt="kod" /><br />
<input type="text" name="kod" maxlength="10" value="" size="10"/><br />
<input type="submit" name="submitButtonName" value="Далее" />
</div></form><div>';
			}
		else
			{
			$err='';
			$format=intval($_POST['format']);
			if($format>3 or $format<1)
			$err.= "НЕверно указан формат файла<br />";
			$kodget=intval($_POST['kod']);
			if($kodget!=@$_SESSION['kod'])
			$err.='Неверно указан проверочный код<br />';
			if($err)
			print $err.'<a href="load.php?file='.$fid.'">Вернуться</a><br />';
			else
				{
				$ses=htmlspecialchars(session_id());
				$ses=str_replace('.','',$ses);
				$ses=str_replace('/','',$ses);
				
				if($format==1)
					{
					print "Формат: java-книга<br />";
					$url="dl/{$fid}_$ses.jar";
					$url1="dl/{$fid}_$ses.jad";
					
					if(!file_exists($url))
						{
						$fp=fopen('1','w');
						flock($fp,LOCK_EX);
						$text=file($filename);
						$cnttext=count($text);
						$namef=trim(htmlspecialchars($text[$namestr]));
						
						/*if($encoding!='windows-1251')
							{
							
								{
								if(!$encoding)
								$namef=mb_convert_encoding($namef, 'windows-1251','utf-8');
								else
								$namef=mb_convert_encoding($namef, 'windows-1251',$encoding);
								}
							}
						if($encoding!='windows-1251')
							{
							for($i=0; $i<$cnttext; $i++)
								{
								if(!$encoding)
								$text[$i]=mb_convert_encoding($text[$i], 'windows-1251','utf-8');
								else
								$text[$i]=mb_convert_encoding($text[$i], 'windows-1251',$encoding);
								}
							}*/
						$splittext=join("",$text);
						$splittext=substr($splittext, 3);
						/*fputs($fp, $splittext);
						flock($fp, LOCK_UN);
						fclose($fp);*/
						//text.txt
						$fp=fopen('text.txt','w+');
						@chmod('text.txt',0777);
						flock($fp,LOCK_EX);
						if(!$encoding)
						$encoding='UTF-8';
						fputs($fp, "<encoding=\"$encoding\">$splittext");
						flock($fp, LOCK_UN);
						fclose($fp);
						
						
						
						//////////////////////////////
						/*$fp=fopen("META-INF/MANIFEST.MF",'w');
						flock($fp,LOCK_EX);
						
						$fputs=
						"Manifest-Version: 1.0
MicroEdition-Profile: MIDP-2.0
MicroEdition-Configuration: CLDC-1.0
MIDlet-Version: 2.1.33
MIDlet-Vendor: (c) Arthur Aseev
MIDlet-Description: Application type: Book
MIDlet-Name: book-$fid($_SERVER[HTTP_HOST])
MIDlet-Icon: /Images/Reader.png
MIDlet-1: book-$fid($_SERVER[HTTP_HOST]), /Images/Reader.png, T.ML";
						fputs($fp,$fputs);
						flock($fp, LOCK_UN);
						fclose($fp);*/
						//copy('java.jar',$url);
						//@chmod($url,0777);
						//$archive = new PclZip('java.jar'); 
						//$archive->add('META-INF/MANIFEST.MF,1');*/
						$rand=rand(1,100);
						$archive = new PclZip($url) or die('err');
						$archive->create('a.class,b.class,META-INF,c.class,c.png,charsets,d.class,e.class,e.png,f.class,files,g.class,h.class,h.txt,i.class,j.class,main.class,windows-866,windows-1251,text.txt');
						//$archive->create("META-INF,T,Images,1") or die('не удалось создать ява-книгу');
						print "Java-версия успешно создана<br />";
						
						//JAD:
						
						$fp=fopen($url1, 'w');					
						flock($fp, LOCK_EX);
						$filesize=filesize($url);
						fputs($fp, 
"Manifest-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MIDlet-Name: TextReader
Created-By: 1.4.2_04 (Sun Microsystems Inc.)
MIDlet-Vendor: www.mobile-mir.com
MIDlet-1: TextReader, TextReader.png, main
MIDlet-Version: 1.0
MicroEdition-Profile: MIDP-2.0
MIDlet-Jar-Size: $filesize
MIDlet-Jar-URL: http://$_SERVER[HTTP_HOST]".dirname($_SERVER['SCRIPT_NAME'])."/$url
");
			
						flock($fp, LOCK_UN);
						fclose($fp);
						}
						$filesize=filesize($url);
						$size=size($filesize);
						print "<a href=\"$url\">Скачать .jar($size)</a><br />";
						print "<a href=\"$url1\">Скачать .jad</a><br />";
						print "Для скачивания у вас есть 30 минут<br />";
						unset($_SESSION['kod']);
						
					}
				elseif($format==2)
					{
					print "Формат: zip-архив<br />";
					$url="dl/{$fid}_$ses.zip";
					if(!file_exists($url))
					{
					$archive = new PclZip($url);
					@unlink("file.txt");
					copy($filename, 'file.txt');
					$archive->create("file.txt,readme.txt") or die('не удалось создать архив');
					}
					$filesize=filesize($url);
					$size=size($filesize);
					print "<a href=\"$url\">Скачать .zip($size)</a><br />";
					print "Для скачивания у вас есть 30 минут<br />";
					unset($_SESSION['kod']);
					}
				elseif($format==3)
					{
					print "Формат: текстовый файл<br />";
					$url="dl/{$fid}_$ses.txt";
					if(!file_exists($url))
					{
					copy($filename,$url);
					}
					$filesize=filesize($url);
					$size=size($filesize);
					unset($_SESSION['kod']);
					print "<a href=\"$url\">Скачать .txt($size)</a><br />";
					print "Для скачивания у вас есть 30 минут<br />";
					}
				}
			}
print "<a href=\"look.php?file=$fid\">Вернуться к статье</a><br />";
print "<a href=\"dir.php?dir=".dirname($fl['filename'])."\">Вернуться в раздел</a><br />";
		}
	}
print '<a href="index.php">&gt;Разделы</a><br />';
print '</div><div class="down"><a href="'.$mainpage.'">'.$mainname.'</a><br /></div><div>';

require('foot.php');
echo '<!--'.(microtime(1)-$mt).'-->'; ?>