【发布时间】:2014-12-23 07:50:13
【问题描述】:
我正在尝试在我的 PHP 文件中使用 INSERT INTO mySQL 方法在我的网站上创建一个新帐户。出于某种原因,数据库没有收到我发送给它的信息。我的问题是:如何使用 php 创建一个新帐户?我的 php 代码的第一部分只是验证从 html 页面提交的文本。
这是我的 php 代码,我用它来验证数据并将数据发送到通过 000webhost.com 托管的数据库。
<?php
$host=""; // Host name (all these are correctly filled in in my code)
$username=""; // username
$password=""; // password
$db_name=""; // Database name
$tbl_name=""; // Table name
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
$myusername=mysql_real_escape_string($_POST['username']);
$mypassword1=mysql_real_escape_string($_POST['pass1']);
$mypassword2=mysql_real_escape_string($_POST['pass2']);
$myemail=mysql_real_escape_string($_POST['email']);
$myfirst=mysql_real_escape_string($_POST['first']);
$mylast=mysql_real_escape_string($_POST['last']);
if(!($mypassword2 == $mypassword1)){
$message = "passwords do not match!";
echo "<script type='text/javascript'>alert('$message');</script>";
}
else{
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' or email='$myemail'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
echo $myusername;
if($count > 0){
$message = "Username or Email already in use!";
echo "<script type='text/javascript'>alert('$message');</script>";
} else {
$sql = 'INSERT INTO users (`id`, `username`, `password`, `first`, `last`, `email`, `grade`, `skype`, `phone`, `credentials`)
VALUES (NULL, \'$myusername\', \'$mypassword1\', \'$myfirst\', \'$mylast\', \'$myemail\', NULL, NULL, NULL, NULL);';
$message = "inserted!";
echo "<script type='text/javascript'>alert('$message');</script>";
}
}
HTML 代码:
<form name="create_account" method ="post" action="php/new_account.php">
<fieldset class="account-info">
<label> First <input type="text" name="first" placeholder="First"> </label>
<label> Last <input type="text" name="last" placeholder="Last"> </label>
<label> Email <input type="text" name="email" id="email" placeholder="Email"> </label>
<label> Username <input type="text" name="username" id="username" placeholder="Username"> </label>
<label> Password <input type="password" name="pass1" id="pass1" placeholder="Password"> </label>
<label> Confirm Password <input type="password" name="pass2" id="pass2" placeholder="Confirm Password" onkeyup="checkPass(); return false;"> </label>
<span id="confirmMessage" class="confirmMessage"></span>
</fieldset>
<fieldset class="account-action">
<input class="btn" type="submit" name="submit" value="Submit">
<a href="login.html" id="log"> Login </a>
</fieldset>
</form>
【问题讨论】:
-
这个问题的标题太可怕了。并且
mysql_函数已被弃用;使用 PDO 或mysqli_。
标签: javascript php html mysql web