当前位置:编程学习 > php >>

关于PHP和C#winform的

$new_password = base64_encode(pack("H*", sha1(utf8_encode($new_password))));
  $updateSQL = sprintf("UPDATE accounts SET password = '{$new_password}' WHERE login = %s", GetSQLValueString($_SESSION['acm_account_name'],"text"));
  mysql_select_db($database_l1jdb, $l1jdb);
  $Result1 = mysql_query($updateSQL, $l1jdb) or die(mysql_error());

  if ($Result1 == 1) {
   echo "更改密码。";
   echo "<a href=\"login.php?logout\"退出</a>";
   exit;
  } else {
   echo "没有更改密码。";
   echo "<a href=\"account.php\">返回</a>";
   exit;
  }

补充:高手看看,帮忙转成在C#winform中可以使用

追问:ASCIIEncoding.ASCII.GetString(Convert.FromBase64String("加密的密码"));

这个加密可以达到下面这个加密的效果吗?

$new_password = base64_encode(pack("H*", sha1(utf8_encode($new_password))));

答案:1、先解码2、执行更新操作我写了一个方法,你看一下:
public void UpdatePassword()        {            //1、解码            string password = ASCIIEncoding.ASCII.GetString(Convert.FromBase64String("加密的密码"));
            string sqlstr = "UPDATE accounts SET password = '" + password + "' where login = '从session拿的值'";
            //使用mssql数据库            SqlConnection conn = new SqlConnection("数据库连接字符串");            SqlCommand comm = new SqlCommand(sqlstr);            int result = comm.ExecuteNonQuery();            if (result == 1)            {                MessageBox.Show("更改密码成功");            }            else            {                MessageBox.Show("更改密码失败");            }        }

string pwd = Convert.ToBase64String(new System.Security.Cryptography.SHA1CryptoServiceProvider().ComputeHash(Encoding.ASCII.GetBytes(txtPwd.Text.Trim())));

不需要解密,登陆的时候 pwd==pwd2 加密判断就行了

挺难的。。。

上一个:php连接SQL Server2000
下一个:php中的变量问题

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,