0

わかりました。オンライン マルチプレーヤー ゲームを作成していて、登録フォームを作成しました。コードに問題はまったく見当たらず、何か助けが得られるかどうか疑問に思っていました。ユーザー名、パスワード、電子メールを書き、クリックします。 「登録」すると、「「フィールドリスト」の「不明な列「名前」」が表示されますありがとう:

<?PHP

//Database Information

$dbhost = "databasehost";
$dbname = "databasename";
$dbuser = "databaseusername";
$dbpass = "datebasepassword";

//Connect to database

mysql_connect ( $dbhost, $dbuser, $dbpass)or die("Could not connect: ".mysql_error());
mysql_select_db($dbname) or die(mysql_error());


$name = $_POST['name'];
$email = $_POST['email'];    
$username = $_POST['username'];
$password = ($_POST['password']);

// lets check to see if the username already exists

$checkuser = mysql_query("SELECT username FROM users WHERE username='$username'");

$username_exist = mysql_num_rows($checkuser);

if($username_exist > 0){
    echo "That name already exists.Try another";
    unset($username);
    include 'registration.html';
    exit();
}

// lf no errors present with the username
// use a query to insert the data into the database.

$query = "INSERT INTO users (name, email, username, password)
VALUES('$name', '$email', '$username', '$password')";
mysql_query($query) or die(mysql_error());
mysql_close();

echo "You are now registered!!!";

// mail user their information

$yoursite = 'www.foodworldvw.tk';
$webmaster = 'Jordan';
$youremail = 'simplyentertainingji@gmail.com';

$subject = "Thanks for registering at our website :)";
$message = "$username, you are now registered on Food World  
    To login, simply go to http://foodworldplay.tk and enter in the following details in the login form:
    Username: $username
    Password: $password

 $webmaster";

mail($email, $subject, $message, "From: $yoursite <$youremail>\nX-Mailer:PHP/" . phpversion());
echo "Thank you for registering with Food World.More information has been sent to your E-mail";
4

1 に答える 1

0

INSERT INTO users (name=>INSERT INTO users (username

私があなたのデータベースをあなたよりよく知っていることを恥じるべきです

また、コードに SQL インジェクションの脆弱性があり、これは重大なセキュリティ上の問題です。

できるだけ早く修正する必要があります。

于 2013-01-27T21:26:13.307 に答える