Просмотр файла newfoto.php

Размер файла: 9.67Kb
<?php
// This is main page;

require './config.php';

if(!empty($j))list($id,$pass)=explode('_',base64_decode($j));

function login()
  {
	global $nick,$pass,$id;
		if (empty($id)){
			$autorize = sql("select * from `users` where `nick`='$nick' and `pass`='".md5($pass)."';");
			}	
		else {
			$autorize = sql("select * from `users` where `id`='$id' and `pass`='".md5($pass)."';");
			}
		if ($autorize)
			{
			$_SESSION['Mid']=$autorize['id'];
			$_SESSION['Mpass']=$autorize['pass'];
			};
    return $autorize;
  };
  
$login=login();

if (!$login)
	{
	tmp_page (to_utf('Личный кабинет'));
		echo '<p>';
		echo to_utf ('Вход в личный кабинет'). '<br/><br/>';

		echo to_utf ('Логин:<br/>') . '<input type="text" name="nick" maxlength="25"/><br/>';
		echo to_utf ('Пароль:<br/>') .'<input type="password" name="pass" maxlength="12"/><br/>';
									  
		echo utf_url($this_uri,'Войти',true, array('nick'=>$nick,'pass'=>$pass));

		echo '</p><p align="center">'. utf_url ('./', 'Фотоальбом') . '<br/>' . $copy . '<br/>';

	tmp_foot();
	die();
	}
	
$us = 'j='.base64_encode($login['id'].'_'.$pass);

 switch ($do)
 	{
		default:
		
		html_page(to_utf('Загрузка фотографии'));
		echo to_utf('<div style="background-color:#00FF99;padding:3px;text-align:center;">Загрузка фотографии</div>');
			if (!isset($upload))
				{
				$total =sql("select count(*) from `gallery_id` where `user_id`='$login[id]';");
				if ($total[0]>0)
					{
					echo '<p align="center">';
					echo to_utf('Файл не должен превышать разрешения 640x480 и размера 500кб!<br/>');
					echo to_utf('Разрешенный тип файлов *.jpg(jpeg) и *.gif<br/>');
					echo to_utf('Если фото с таким именем уже есть, оно будет <b>перезаписано</b>!<br/><br/>');
					echo '<form enctype="multipart/form-data" action="'.$this_uri.'?upload" method="post">';
					echo to_utf('<div align="center">Выберите фото:<br/>');
					echo '<input type="file" name="photo"/><br/>';
					echo to_utf('Имя фотографии в каталоге:<br/>');
					echo '<input name="photo_n" type="text" maxlength="25"/><br/>';
					echo to_utf('Выберите каталог:<br/>');
				$cats = mysql_query("select `id`, `gname` from `gallery_id` where `user_id`='$login[id]';");
					echo '<select name="gall_id">';
					
					while ($opens=mysql_fetch_array($cats))
						echo '<option value="'.$opens['id'].'">'.$opens['gname'].'</option>';
					
					echo '</select><br/>';
					echo '<input type="hidden" name="j" value="'.$j.'"/>';
					echo to_utf('<input type="submit" value="Добавить"/>');
					echo '</div></form></p><br/>';
					}
						else {
							echo '<p align="center">';
							echo to_utf('У Вас не создано каталогов!<br/>');
							echo to_utf('Для начала нужно <a href="./profile.php?do=newcat&amp;j='.$j.'">создать</a> каталог, а потом уже добавлять фотографии!');
							echo '</p>';
							};
				};	
			
		    if (isset($upload)) 
				{
				echo '<p>';
				$error ='';
					$image = getimagesize($_FILES['photo']['tmp_name']);
					
					if($_FILES['photo']['type']!='image/gif' && $_FILES['photo']['type']!='image/jpeg')
						$error .='- файл имеет недопустимый формат, поддерживаемые форматы: *.gif и *.jpg(jpeg)!<br/>';
					
					if ($_FILES['photo']['size'] > (500 * 1024)) 
						$error .='- размер Вашего файла превышает лимит в 200кб!<br/>';
						
					if (preg_match('/[^\da-zA-Z_.]+/',$_FILES['photo']['name'])) 
						$error .= '- имя файла должно быть латинскими буквами!<br/>';
						
					if (empty($_FILES['photo']['name'])) 
						$error .= '- Вы не выбрали файл!<br/>';
						
					if ($image[0] >=640 && $image[1] >=480) 
						$error .= '- разрешение Вашего файла превышает лимит!<br/>';
					
					if (!is_numeric($_POST['gall_id']))
						$error.= '- id каталога не найден<br/>';
						
					$photo_n=stripslashes(htmlspecialchars(substr($_POST['photo_n'],0,25), ENT_QUOTES));
					
						if (empty($error))
							{
							$sql =sql ("select `id`, `original` from `photo_id` where `original`='$imagename';");
							 
						     if (file_exists('./photos/'.$login['id'].'_'.$_FILES['name']))
							  	@unlink('./photos/'.$login['id'].'_'.$_FILES['name']);
								
								
							@move_uploaded_file($_FILES['photo']['tmp_name'], "./photos/".$login[id].'_'.$_FILES[photo]['name']);
							@chmod("./photos/".$login[id].'_'.$_FILES['photo']['name'], 0644);

						if (!empty($sql[1]))
							{
								mysql_query("update `photo_id` set `gallery_id`='$gall_id', `crdate`='".time()."', 
														   		   `phname`='$photo_n', 
																   `original`='".$login['id'].'_'.$_FILES['photo']['name']."'
													  		   Where `id`='$sql[0]' and `user_id`='$login[id]';"
													   			);
							}else {			
								mysql_query("insert into `photo_id` set `user_id`='$login[id]', `gallery_id`='$gall_id', 
																		`crdate`='".time()."', `phname`='$photo_n', 
																	`original`='".$login['id'].'_'.$_FILES['photo']['name']."';"
																);
								}
		
		
			 echo to_utf('Файл успешно загружен в галерею!<br/>Размер фотографии: '.round($_FILES['photo']['size']/1024,1).'кб');
			 echo to_utf('<br/>Тип файла: '. $_FILES['photo']['type'] );
			 echo to_utf('<br/>Нажмите <a href="./profile.php?j='.$j.'">сюда</a>, чтобы продолжить!');
				}
			else {
			echo to_utf('Файл не может быть добавлен по следующим причинам:<br/>'.$error);
			echo '<br/>'.utf_url($this_uri.'?j='.$j,'Назад');
				}
			echo '</p>';
			};
		echo '<br/><div style="background-color:#00FF99;padding:3px;text-align:center;">';
		echo utf_url('./profile.php?j='.$j,"Профиль[$login[nick]]").'<br/>'.$copy.'</div>';
		foot_html();
		break;
		
		case 'newph':
		
		tmp_page(to_utf('Импорт фотографии'));

			if (!isset($_GET['copy']))
				{
				$total =sql("select count(*) from `gallery_id` where `user_id`='$login[id]';");
				if ($total[0]>0)
					{
					echo '<p align="center">';
					echo to_utf('Файл не должен превышать разрешения 640x480 и размера 500кб!<br/>');
					echo to_utf('Разрешенный тип файлов *.jpg(jpeg) и *.gif<br/>');
					echo to_utf('Если фото с таким именем уже есть, оно будет <b>перезаписано</b>!<br/><br/>');	
					
					echo to_utf('Адрес фотографии: <br/><input name="photo" type="text"/><br/>');
					
					echo to_utf('Имя фотографии в каталоге:<br/>');
					echo '<input name="photo_n" type="text" maxlength="25"/><br/>';
					echo to_utf('Выберите каталог:<br/>');
				$cats = mysql_query("select `id`, `gname` from `gallery_id` where `user_id`='$login[id]';");
					echo '<select name="gall_id">';
					
					while ($opens=mysql_fetch_array($cats))
						echo '<option value="'.$opens['id'].'">'.$opens[gname].'</option>';
					
					echo '</select><br/>';
					echo utf_url($this_uri.'?copy','Добавить',true, array('photo','photo_n','gall_id','do'=>'newph','j'=>$j));
					}
						else {
							echo '<p align="center">';
							echo to_utf('У Вас не создано каталогов!<br/>');
							echo to_utf('Для начала нужно <a href="./profile.php?do=newcat&amp;j='.$j.'">создать</a> каталог, а потом уже добавлять фотографии!');
							};
				}

			else
				{
					echo '<p>';
					$image=@getimagesize($_POST['photo']);

					$error ='';
	
					if ($image['mime']!='image/gif' && $image['mime']!='image/jpeg')
							$error .= 'Файл имеет недопустимый формат, поддерживаемые форматы: *.gif и *.jpg(jpeg)!<br/>';
							
					if (empty($_POST['photo'])) 
							$error .='Вы не ввели адрес файла!<br/>';
							
					if (!is_numeric($_POST['gall_id']))
						$error.= '- id каталога не найден<br/>';
						
					$photo_n=stripslashes(htmlspecialchars(substr($_POST['photo_n'],0,25), ENT_QUOTES));
					
						$imagename=substr(strrchr($_POST['photo'],'/'),1);
						
					
						@copy($_POST['photo'],'./photos/'.$login['id'].'_'.$imagename.'_T');

							if (@filesize('./photos/'.$login['id'].'_'.$imagename.'_T') > (500 * 1024))
									$error .= 'Размер Вашего файла превышает лимит в 500кб!<br/>';
 						
						@unlink ('./photos/'.$login['id'].'_'.$imagename.'_T');
							
						if ($image[0] >=640 && $image[1] >=480) 
							$error .='Разрешение Вашего файла превышает лимит!<br/>';
						
						if (preg_match('/[^\da-zA-Z_.]+/', $imagename)) 
							$error .= '- имя файла должно быть латинскими буквами!<br/>';	
												
				if (empty($error))
					{
						$sql =sql ("select `id`, `original` from `photo_id` where `original`='$imagename';");
						
							if (file_exists('./photos/'.$login['id'].'_'.$imagename))
									 @unlink('./photos/'.$login['id'].'_'.$imagename);
										 
								copy($_POST['photo'], "./photos/".$login[id]."_".$imagename);
								chmod("./photos/".$login[id]."_".$imagename, 0644);
						
						if (!empty($sql[1]))
							{
								mysql_query("update `photo_id` set `gallery_id`='$gall_id', `crdate`='".time()."', 
														   		   `phname`='$photo_n', 
																   `original`='".$login['id'].'_'.$imagename."'
													  		   Where `id`='$sql[0]' and `user_id`='$login[id]';"
													   			);
							}else {			
								mysql_query("insert into `photo_id` set `user_id`='$login[id]', `gallery_id`='$gall_id', 
																		`crdate`='".time()."', `phname`='$photo_n', 
																		`original`='".$login['id'].'_'.$imagename."';"
																);
								};
	
				 echo to_utf('Файл успешно загружен в галерею!<br/>');
				 echo to_utf('Размер фотографии: '. round(filesize('./photos/'.$login['id'].'_'.$imagename)/1024,1).'кб');
				 echo to_utf('<br/>Тип файла: '. $image['mime']);
				 echo to_utf('<br/>Нажмите <a href="./profile.php?j='.$j.'">сюда</a>, чтобы продолжить!');

			}
				
			else {
				echo to_utf('Файл не может быть добавлен по следующим причинам:<br/>'.$error).'<br/>';
				echo utf_url($this_uri,'Назад', true, array('do'=>'newph','j'=>$j));
				}
			};
		echo '</p><p align="center">';
		echo utf_url('./profile.php?j='.$j,"Профиль[$login[nick]]").'<br/>'.$copy.'';
		tmp_foot();
			
		break;
	}
?>