title: Hashing password in register and account settings
body: <p>I am get login errors when i test my script by logining under my own account. Do you think hashing passwords twice a bad practice?</p>
  
  <p>I have hashed the users password twice in my website. Once, when they register and once, when they update their password in account update. Also i am using bcrypt method and cost of bcrypting is 10 on both hashings and i am on localhost server. </p>
  
  <pre><code>    ///// this is the code in register.php page
      &lt;?php      
      if(isset($_POST['registeruser']))  {
          session_start();
          $FName = $_POST['regfname'];
          $LName = $_POST['reglname'];
          $Email = mysqli_real_escape_string($conn, $_POST['regemail']);
          $origignalpassword = preg_replace('#[^a-z0-9_]#i', '', 
                               $_POST['regpassword']);
          $Passwordw = $_POST['confirmedpassword'];
          $infosql = "SELECT * FROM users WHERE useremail = '".$Email."'";
          $result = mysqli_query($conn,$infosql);
              if(mysqli_num_rows($result)&gt;=1)
                     {
                      echo "Email already taken.";
                     }
                     else if(mysqli_num_rows($result) !=1 &amp;&amp; $Passwordw == 
                     $origignalpassword) {
                     $Passwordhash = password_hash($Passwordw, 
                                     PASSWORD_BCRYPT, array('cost' =&gt; 10));
                      $sql = $conn-&gt;query("INSERT INTO users(firstname, 
                      lastname, useremail, Passwordcell) Values('{$FName}', 
                      '{$LName}','{$Email}','{$Psswordhash}')");
                          header('Location: login.php');
                      } else {
                          echo 'Please check your password:' . '&lt;br&gt;';
                      } 
               }
      ?&gt;
  
  
      //// Below code is the code in my update.php page
  
  
      &lt;?php session_start();  
          if(isset($_SESSION['user_id'])) { 
              } else {
                  header('Location: login.php'); 
              }
  
          $user = $_SESSION['userid'];
          $myquery = "SELECT * FROM users WHERE `userid`='$user'";
          $result = mysqli_query($conn, $myquery);
          $row = mysqli_fetch_array($result, MYSQLI_BOTH);
  
          $_SESSION['upd_fnames'] = $row['firstname'];
          $_SESSION['upd_lnames'] = $row['Lastname'];
          $_SESSION['upd_emails'] = $row['useremail'];
          $_SESSION['upd_passwords'] = $row['Passwordcell'];
          $_SESSION['upd_phone'] = $row['phonenum'];
          $_SESSION['upd_bio'] = $row['biography'];   
      ?&gt;
      &lt;?php 
      if (isset($_POST['updateme'])) {
          $updfname = $_POST['upd_fnames'];
          $updlname = $_POST['upd_lnames'];
          $updemail = $_POST['upd_emails'];
          $updphone = $_POST['upd_phone'];
          $upd_pswd = $_POST['upd_passwords'];        
          $biography = $_POST['update_biography'];
  
          $Pswod = password_hash($upd_pswd, PASSWORD_BCRYPT, 
                   array('cost' =&gt; 10));
          $sql_input = $mysqli-&gt;query("UPDATE users SET firstname = '{$updfname}', Lastname = '{$updlname}', Phonenum = '{$updphone}', useremail = '{$updemail}', Passwordcell = '{$Pswod}', biography = '{$biography}' WHERE userid=$user");
  
          header('Location: Account.php');
      }  
      else 
      {
  
      }
  ?&gt;
  </code></pre>