md5 暗号化の問題 include("config.php"); include("conn.php"); if($_POST['submit']) { $sql="ユーザー (uid,m_id,ユーザー名,パスワード) に挿入します。" . "値 ('','','$_POST[ユーザー名]','md5( $_POST [パスワード].all_ps)')"; mysql_query($sql); echo "alert('登録成功');history.go(-1 )< ;/script>";<br><br> }<br><br>?><br><br><link href="images/css.css" rel="stylesheet" type=" text/ css"><br><br><br> <form action="" method="post" ><br><br> ユーザー名: <input type="text" name="ユーザー名" size ="40" maxlength="40"/><br/><br> パスワード:<input type="password" name="password" size="40" maxlength="40"/> <br> <br/><br><br> <input type="submit" name="submit" value="Register"/><br><br><br> </form> <br><br>[登録] ボタンをクリックした後、データベースのパスワード フィールドの内容は MD5 によって暗号化されません。たとえば、パスワードに「123」を入力すると、データベースの内容は md5(123.all_ps) ああ、何が起こっているのか教えてください。 (all_ps は定数です)<br><br><br>-----解決策---------<font color="#e78608"></font> 'md5($_POST[password].all_ps)'<br>PHP は文字列内の変数 ($_POST['password']) のみを処理します。最初に結果を変数に書き込んだ方がよいでしょう。 <br><br>------解決策---------<font color="#e78608"></font>SQL を変更します<br><br> $sql = "ユーザー (uid,m_id,ユーザー名,パスワード) に挿入します。" . "値 ('','','{$_POST['ユーザー名']}','" . md5 ( $_POST ['パスワード' ] ) . "')";</p>