需要帮助。。。如何在php中将md5添加到密码字段?
我在这里寻求帮助和关注 很多年前我买了一些php脚本,现在不再支持了。。。我只想将md5添加到密码字段 这是我的表格:需要帮助。。。如何在php中将md5添加到密码字段?,php,passwords,md5,Php,Passwords,Md5,我在这里寻求帮助和关注 很多年前我买了一些php脚本,现在不再支持了。。。我只想将md5添加到密码字段 这是我的表格: <?php $SQL = "SELECT * from USERS WHERE USERNAME = '$_SESSION[username]'"; $result = @mysql_query( $SQL ); $row = @mysql_fetch_array( $result ); include 'menu.php'; ?> <FORM METHOD
<?php
$SQL = "SELECT * from USERS WHERE USERNAME = '$_SESSION[username]'"; $result = @mysql_query( $SQL ); $row = @mysql_fetch_array( $result );
include 'menu.php';
?>
<FORM METHOD="post" ACTION="?page=query_client">
<INPUT TYPE="hidden" NAME="controller" VALUE="USERS~update~account_details&up=1~<?php echo $row[ID]; ?>">
<TABLE CLASS="basictable">
<TR>
<TD CLASS="tdmenu" WIDTH="40%">Username</TD>
<TD CLASS="tdmenu" WIDTH="60%">
<b><?php echo $row[USERNAME]; ?></b>
</TD>
</TR>
<TR>
<TD CLASS="tdmenu" WIDTH="40%">Password *</TD>
<TD CLASS="tdmenu" WIDTH="60%">
<INPUT TYPE="PASSWORD" NAME="PASSWORD" SIZE="40" VALUE="<?php echo $row[PASSWORD]; ?>">
</TD>
</TR>
<TR>
<TD CLASS="tdmenu" WIDTH="40%">Email Address *</TD>
<TD CLASS="tdmenu" WIDTH="60%">
<INPUT TYPE="text" NAME="EMAIL" SIZE="40" VALUE="<?php echo $row[EMAIL]; ?>">
</TD>
</TR>
<TR>
<TD CLASS="tdmenu" WIDTH="40%">Full Name *</TD>
<TD CLASS="tdmenu" WIDTH="60%">
<INPUT TYPE="text" NAME="FULLNAME" SIZE="40" VALUE="<?php echo $row[FULLNAME]; ?>">
</TD>
<TR>
<TD CLASS="tdmenu" WIDTH="40%">Address *</TD>
<TD CLASS="tdmenu" WIDTH="60%">
<INPUT TYPE="text" NAME="ADDRESS1" SIZE="40" VALUE="<?php echo $row[ADDRESS1]; ?>">
</TD>
</TR>
<BR>
<TABLE CLASS="basictable">
<TR>
<TD CLASS="tdhead2" >
<DIV ALIGN="CENTER"><B>
<INPUT TYPE="submit" NAME="Submit" VALUE="Submit">
</B></DIV>
</TD>
</TR>
</TABLE>
</FORM>
最好也使用salt-哈希和验证应该在服务器上完成-请参阅
有关编写安全代码的一些链接:
您是否明白,您也必须在密码检查中添加md5?无论如何,它不会帮助您处理这样的包括“$\u GET[inc].php”代码>易受攻击的代码。。。我越是研究这段代码,我就越是得到scaredOK Col.Shrapnel,我很感激你的评论,但是我对php一无所知,让我知道如何解决这个问题。。。?从易受攻击的代码中,还可以将md5添加到密码字段?OMG,而不仅仅是$_GET[inc]。php是一场灾难,基本上任何人都可以通过创建一个简单的URL并将其扔到您的query_client.php来改变您的表结构。。。所以,扔掉它,从头开始吧。作为记录,stackoverflow是为程序员准备的,我们不是来为你免费工作的@Col.Shrapnel好的,如何开始你的想法…?@对不起,我不明白,但是如何改变结构。。。?以及如何解决这个问题。谢谢@hobodave我很多年前就买了这个代码,现在不再支持了,我只是想看看一些不错的建议。。。。你能吗?好的,请帮我怎么做,任何与我上面的脚本相关的例子。@jones:我认为谨慎的做法是按照你的帖子评论的建议,即安全地重写它。我添加了一些额外的链接,这些链接可能会在这方面有所帮助。
<?PHP
@session_start();
$controller = $_POST['controller'];
$pieces = explode("~", $controller);
$table = $pieces[0];
$qt = $pieces[1];
$return = $pieces[2];
$id = $pieces[3];
$hack = $pieces[4];
if ($qt == insert) $qt = 'INSERT INTO';
if ($qt == update) { $qt = 'UPDATE'; $end = "WHERE ID = '$id'"; }
$pre = array_keys( $_POST );
mysql_query ("CREATE TABLE IF NOT EXISTS `$table` (`ID` INT NOT NULL AUTO_INCREMENT , PRIMARY KEY ( `id` ) )");
$count = count($pre); $count = $count - 2;
$sql = "$qt $table SET";
for ($i=0; $i < $count; $i++)
{
$x=$i+1;
$y = $_POST[$pre[$x]];
$d = $y;
mysql_query ("ALTER TABLE `$table` ADD `$pre[$x]` TEXT NOT NULL");
$sql .= " `$pre[$x]` = '$d',";
}
$sql .= " ID = '$id' $end";
$query = mysql_query($sql) or die("$sql_error" . mysql_error());
if (empty($hack)) { } else {
$pieces = explode("/", $hack);
$h0 = $pieces[0];
$h1 = $pieces[1];
$h2 = $pieces[2];
$h3 = $pieces[3];
$h4 = $pieces[4];
$h5 = $pieces[5];
mysql_query ("ALTER TABLE `$table` $h0 $h1 $h2 $h3 $h4 $h5");
$query = mysql_query($sql) or die("$sql_error" . mysql_error());
}
if (isset($_GET[inc])) include "$_GET[inc].php";
?>