submit на две форми

nikitybe

Registered
Къде е грешката ?

Код:
	<table>
	 <tr>
		  	<form action='' method='post' name='user'>
			<th colspan='2'><font color='#000000' size='4'>Промяна на паролата</font></th></tr>
			<tr><td> Стара парола</td><td><input type='password' name='old_password'></td></tr>
			<tr><td>Нова парола</td><td> <input type='password' name='new_password'></td></tr>
			<tr><td colspan='2'><input type='submit' name='button1' value='Запиши промените'></td></tr>
		    </form>
	</table>
		
		<table>
			<tr>
			<form action='' method='post' name='other'>
			<th colspan='2'><font color='#000000' size='4'>Друга информация</font></th></tr>
		  <tr><td>Смени email</td><td> <input type='text' name='email'></td></tr>
		  <tr><td> Смени skype</td><td> <input type='text' name='skype'></td></tr>
		  <tr><td colspan='2'><input type='submit' name='button2' value='Запиши промените'></td></tr>
			</form>
	</table>";
			  
$old_password = trim($_POST['old_password']);
$new_password = trim($_POST['new_password']);
$email		  = $_POST['email'];
$skype	 	  =  addslashes(htmlspecialchars($_POST['skype']));
$button1	  = $_POST['butto1'];
$button2	  = $_POST['butto2'];

	if(isset($button1)){
	$rs = mysql_query("SELECT * FROM `users` WHERE `username`='$az'");
	$row = mysql_fetch_assoc($rs);

		if($row['password']!=$old_password){
		echo "Старата парола е грешна!";
		}
		elseif(strlen($new_password)< 3){
		echo "Новата парола е твърде кратка!";
		}else{
		mysql_query("UPDATE `users` SET password='$new_password' WHERE username='$az'");
		echo "Успешно променихте паролата.";
		}
	}
	
	if(isset($button2)){
		if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)){
		echo "Невалиден email адрес!";
		}else{
		mysql_query("UPDATE `users` SET email='$email', skype='$skype' WHERE username='$az'");
		echo "Успешно променихте профила си.";
		}

	}
 
Код:
   <table>
    <tr>
           <form action='' method='post' name='user'>
         <th colspan='2'><font color='#000000' size='4'>Промяна на паролата</font></th></tr>
         <tr><td> Стара парола</td><td><input type='password' name='old_password'></td></tr>
         <tr><td>Нова парола</td><td> <input type='password' name='new_password'></td></tr>
         <tr><td colspan='2'><input type='submit' name='button1' value='Запиши промените'></td></tr>
          </form>
   </table>
      
      <table>
         <tr>
         <form action='' method='post' name='other'>
         <th colspan='2'><font color='#000000' size='4'>Друга информация</font></th></tr>
        <tr><td>Смени email</td><td> <input type='text' name='email'></td></tr>
        <tr><td> Смени skype</td><td> <input type='text' name='skype'></td></tr>
        <tr><td colspan='2'><input type='submit' name='button2' value='Запиши промените'></td></tr>
         </form>
   </table>";
          
$old_password = trim($_POST['old_password']);
$new_password = trim($_POST['new_password']);
$email        = $_POST['email'];
$skype         =  addslashes(htmlspecialchars($_POST['skype']));
$button1     = $_POST['button1'];
$button2     = $_POST['button2'];

   if(isset($button1)){
   $rs = mysql_query("SELECT * FROM `users` WHERE `username`='$az'");
   $row = mysql_fetch_assoc($rs);

      if($row['password']!=$old_password){
      echo "Старата парола е грешна!";
      }
      elseif(strlen($new_password)< 3){
      echo "Новата парола е твърде кратка!";
      }else{
      mysql_query("UPDATE `users` SET password='$new_password' WHERE username='$az'");
      echo "Успешно променихте паролата.";
      }
   }
   
   if(isset($button2)){
      if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)){
      echo "Невалиден email адрес!";
      }else{
      mysql_query("UPDATE `users` SET email='$email', skype='$skype' WHERE username='$az'");
      echo "Успешно променихте профила си.";
      }

   }
 
Само ако може да ми покажеш къде е разликата, че така и не мога да я видя :)
 
nikitybe каза:
Само ако може да ми покажеш къде е разликата, че така и не мога да я видя :)


$button1 = $_POST['button1'];
$button2 = $_POST['button2'];

Това е в моя код, а на твоя ти беше забраил n-то

Код:
$button1     = $_POST['butto1'];
$button2     = $_POST['butto2'];
 
Няма проблем, нали за това сме тук, и един съвет от мен, няма нужда излишно да си удължаваш кода, можеш просто да пишеш

if (isset($_POST['button1']))
{
}

а не да слагаш в дадена променлива $_POST... и после да проверяваш.. :)
 
:D знам ама все още се уча и не бързам за никъде. Пък и не мисля, че има някакво забавяне на кода така или дори и да има то милисекунди. Интересува ме в момента ООП. Ако имаш някакви хубави уроци и материали ще съм ти благодарен да ги споделиш. Мерси.
 
nikitybe каза:
:D знам ама все още се уча и не бързам за никъде. Пък и не мисля, че има някакво забавяне на кода така или дори и да има то милисекунди. Интересува ме в момента ООП. Ако имаш някакви хубави уроци и материали ще съм ти благодарен да ги споделиш. Мерси.

Тук не става дума за бързина, става дума за практика :) Почти никъде няма да срещнеш този принцип на работа, за това ти го казах, ако искаш да ставаш програмист, трябва да работиш, така, както ако аз седна и почна да чета кода ти, ще ми е най-лесно да го разбера, и най-важното да се ориентирам в него, тук вече става дума за практиката :?: А за ООП Уроци

Линк
 
Тези вече съм ги преглеждал по два пъти ама като че ли ми трябва още. Почвам да пиша някой клас и все нещо куца :D А като гледам хората какви класове пишат лошо ми става.
 
И аз в момента уча ООП.. време ми е вече :D Но и моят проблем е като твоят.. само тези уроци не ми стигат..
 

Back
Горе