Проблем с update на данни...

Не си ме разбрал.... В момента иска задължително да напша някаква парола, за да сменя данните. Аз не искам това да е така! Искам пак да си има проверка за дължината на стринга, който е зададен за парола, но да не е задължително. Сега за да си редактирам майла, трябва задължително и да си сменя паролата. Искам да мога да си сменя майла или някоя друга опциика без да си пиша нова парила. Как ще стане това?
 
PHP:
<?php
session_start();
include 'includes/config.php';
include 'includes/security.php';

$username = isset($_SESSION['username']) ? $_SESSION['username'] : NULL;
if(isset($_POST['edit']))
{
	$pass1 = trim(addslashes(htmlspecialchars($_POST['password1'])));
	$pass2 = trim(addslashes(htmlspecialchars($_POST['password2'])));
	$mail = trim(addslashes(htmlspecialchars($_POST['mail'])));
	$skype = trim(addslashes(htmlspecialchars($_POST['skype'])));
	$site = trim(addslashes(htmlspecialchars($_POST['site'])));
	if(empty($mail))
	{
		$error = "Попълнете всички полета";
	}
	else
	{
		if(strlen($username) >= 3)
		{
			$q = mysql_query("SELECT `username` FROM `users` WHERE `username`='{$username}' LIMIT 1") or die(mysql_error());
			if(mysql_num_rows($q) > 0)
			{
				if(empty($pass1) && empty($pass2)){
					$q = mysql_query("UPDATE `users` SET `mail`='{$mail}', `skype`='{$skype}', `site`='{$site}' WHERE `username`='{$username}'") or die(mysql_error());
					$check = "Промените са извършени!";
				}
				else{
					if($pass1 == $pass2)
					{
						if(strlen($pass1) >= 6)
						{
							if(!eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+))*$",$mail))
							{
								$error = "Невалиден емайл адрес!";
							}
							else
							{
								$newPass = md5("bg".$pass1."1337");
								$q = mysql_query("UPDATE `users` SET `password` = '{$newPass}', `mail`='{$mail}', `skype`='{$skype}', `site`='{$site}' WHERE `username`='{$username}'") or die(mysql_error());
								$check = "Промените са извършени!";
							}
						}
						else
						{
							$error = "Паролата трябва да е по-голяма от 6 символа!";
						}
					}
					else
					{
						$error = "Паролите не съвпадат!";
					}
				}
			}
			else
			{
				$error = "Потребителското име не съществува!";
			}
		}
		else
		{
			$error = "Потребителското име трябва да е по-голямо от 3 символа!";
		}
	}
}

$query = mysql_query("SELECT * FROM `users` WHERE `username`='{$username}'") or die(mysql_error());
if(!isset($_SESSION['username'])){
	while($row = mysql_fetch_assoc($query))
	{   
		?>
		<table>
		<form method="POST" action="">
			<tr><td>Име: </td><td><?php echo $username; ?></td></tr>
			<tr><td>Парола: </td><td><input type="password" name="password1" /></td></tr>
			<tr><td>Повтори парола: </td><td><input type="password" name="password2" /></td></tr>
			<tr><td>Емайл: </td><td><input type="text" name="mail" value="<?php echo $row['mail']; ?>" /></td></tr>
			<tr><td>Skype: </td><td><input type="text" name="skype" value="<?php echo $row['skype']; ?>" /></td></tr>
			<tr><td>Сайт: </td><td><input type="text" name="site" value="<?php echo $row['site']; ?>" /></td></tr>
			<tr><td><input type="submit" value="Промени" name="edit" /></td></tr>
		</form>
		</table>
		<?php 
	}
}
?>

Пробвай така?
 
БЛАГОДАРЯ! :?: Буквално ми спаси кожичката, защото проекта ми трябва за утре сутринта, а това беше последния компонент... :D
 
tedo96 каза:
БЛАГОДАРЯ! :?: Буквално ми спаси кожичката, защото проекта ми трябва за утре сутринта, а това беше последния компонент... :D


Няма проблем, просто следи последователността на проверките ;)
 

Back
Горе