-1

私はこの次のコードを書きました & pswd = pswd を再入力し、後で次の値をテーブルに挿入する場合 (WHICH ISN'T)、「サインアップ成功」をエコーする必要があります。サインアップ成功を単にエコーしますが、値は TABLE に挿入されません。PHPコードでDBへの接続に失敗したと確信しています。コードを修正してください! 私のコードは次のとおりです。

<?php

session_start();
include('header.php');

$mysql_host = 'localhost';
$mysql_user = 'root';
$mysql_pass = '1234';

$mysql_db = "my_db";

if (!mysql_connect($mysql_host, $mysql_user, $mysql_pass) || !mysql_select_db($mysql_db))
 {
die(mysql_error());
}

if( isset( $_REQUEST['namevar'] ) ){

$nmvar = $_REQUEST['namevar'];
$email = $_REQUEST['name1'];
$psvar = $_REQUEST['p1'];
$cpsvar = $_REQUEST['p2'];
$gender = $_REQUEST['r1'];
$clvar = $_REQUEST['t2'];
$plvar = $_REQUEST['t1'];


if($psvar == $cpsvar)
{
$sql = "INSERT INTO `users` (name,email,password,confirm password,gender,college,place) 
VALUES ('$nmvar','$email','$psvar','$cpsvar','$gender','$clvar','$plvar')";
mysql_query($sql);
echo "Signup successful";
}
else
{
echo "Password Mismatch";
}   
}
?>
<form action="" method="post">
Name:
<input type="text" name="namevar" /><br/>
E-mail:
<input type="text" name="name1" /><br/>
Password:
<input type="password" name="p1" /><br/>
Confirm Password:
<input type="password" name="p2" /><br/>
Gender:
<input type="radio" name="r1" />
Male
<input type="radio" name="r1" />
Female
<br/>
Location:
<input type="text" name="t1" /><br/>
College:
<input type="text" name="t2" /><br/>
<input type="submit" value="submit" /><br/>
<input type="reset" value="reset" />
</form>
4

1 に答える 1

1

データをデータベースに送信する前に、データに対して mysql_real_escape_string() 関数を使用する必要があります。そうしないと、コードが SQL インジェクションの危険にさらされます。

于 2013-03-29T17:11:20.003 に答える