我是网站建设的新手,但我现在已经使用了一年左右,我现在正试图将我的网站放在一起。但我完全坚持这一部分。如果有人可以提供帮助......我会非常感激。这是我的代码。
FORM
<form action="##########" name="########" id="###########" method="POST">
<table border="0" width="625" align="left" cellpadding="15" cellspacing="0" bgcolor="#000000">
<tr>
<td class="text4" align="right">
Nickname:
</td>
<td>
<div id='################' class="error_strings"></div>
<input type="text" name="nickname" />
</td>
</tr>
<tr>
<td class="text4" align="right">
E-mail:
</td>
<td>
<div id='###############' class="error_strings"></div>
<input type="text" name="email" />
</td>
</tr>
<tr>
<td class="text4" align="right">
Password:
</td>
<td>
<div id='###############' class="error_strings"></div>
<input type="password" name="password" />
</td>
<tr>
<td class="text4" align="right">
Date of birth:
</td>
<td>
<inputtype="hidden" name="date_of_bith">
<select name="bday">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option selected value="31">31</option>
</select>
<select name="bmonth" >
<option selected value="1">1</option>
<option value=""></option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>
<select name="byear">
<option value="2005">Year</option>
<option value="2004">2004</option>
<option value="2003">2003</option>
<option value="2002">2002</option>
<option value="2001">2001</option>
<option value="2000">2000</option>
<option value="1999">1999</option>
<option value="1998">1998</option>
<option value="1997">1997</option>
<option value="1996">1996</option>
<option value="1995">1995</option>
<option value="1994">1994</option>
<option value="1993">1993</option>
<option value="1992">1992</option>
<option value="1991">1991</option>
<option value="1990">1990</option>
<option value="1989">1989</option>
<option value="1988">1988</option>
<option value="1987">1987</option>
<option value="1986">1986</option>
<option value="1985">1985</option>
<option value="1984">1984</option>
<option value="1983">1983</option>
<option value="1982">1982</option>
<option value="1981">1981</option>
<option value="1980">1980</option>
<option value="1979">1979</option>
<option value="1978">1978</option>
<option value="1977">1977</option>
<option value="1976">1976</option>
<option value="1975">1975</option>
<option value="1974">1974</option>
<option value="1973">1973</option>
<option value="1972">1972</option>
<option value="1971">1971</option>
<option selected value="1970">1970</option>
<option value="1969">1969</option>
<option value="1968">1968</option>
<option value="1967">1967</option>
<option value="1966">1966</option>
<option value="1965">1965</option>
<option value="1964">1964</option>
<option value="1963">1963</option>
<option value="1962">1962</option>
<option value="1961">1961</option>
<option value="1960">1960</option>
<option value="1959">1959</option>
<option value="1958">1958</option>
<option value="1957">1957</option>
<option value="1956">1956</option>
<option value="1955">1955</option>
<option value="1954">1954</option>
<option value="1953">1953</option>
<option value="1952">1952</option>
<option value="1951">1951</option>
<option value="1950">1950</option>
<option value="1949">1949</option>
<option value="1948">1948</option>
<option value="1947">1947</option>
<option value="1946">1946</option>
<option value="1945">1945</option>
<option value="1944">1944</option>
<option value="1943">1943</option>
<option value="1942">1942</option>
<option value="1941">1941</option>
<option value="1940">1940</option>
<option value="1939">1939</option>
<option value="1938">1938</option>
<option value="1937">1937</option>
<option value="1936">1936</option>
<option value="1935">1935</option>
<option value="1934">1934</option>
<option value="1933">1933</option>
<option value="1932">1932</option>
<option value="1931">1931</option>
<option value="1930">1930</option>
<option value="1929">1929</option>
<option value="1928">1928</option>
<option value="1927">1927</option>
<option value="1926">1926</option>
<option value="1925">1925</option>
<option value="1924">1924</option>
<option value="1923">1923</option>
<option value="1922">1922</option>
<option value="1921">1921</option>
<option value="1920">1920</option>
<option value="1919">1919</option>
<option value="1918">1918</option>
<option value="1917">1917</option>
<option value="1916">1916</option>
<option value="1915">1915</option>
<option value="1914">1914</option>
<option value="1913">1913</option>
<option value="1912">1912</option>
<option value="1911">1911</option>
<option value="1910">1910</option>
<option value="1909">1909</option>
<option value="1908">1908</option>
<option value="1907">1907</option>
<option value="1906">1906</option>
<option value="1905">1905</option>
<option value="1904">1904</option>
<option value="1903">1903</option>
<option value="1902">1902</option>
<option value="1901">1901</option>
<option value="1900">1900</option>
</td>
</td>
</tr>
<tr>
<td class="text4" align="right">
Country:
</td>
<td>
<div id='################' class="error_strings"></div>
<align="left" valign="top">
<select name="country" value="000" select="select" class="INPUT">
<option value=""></option>
<option value="3">Africa</option>
<option value="1">Australia</option>
<option value="2">Canada</option>
<option value="3">China</option>
<option value="3">European Union</option>
<option value="3">Greenland</option>
<option value="3">Iceland</option>
<option value="3">Israel</option>
<option value="3">Japan</option>
<option value="3">New Zealand</option>
<option value="3">Norway</option>
<option value="3">Russia</option>
<option value="3">South America</option>
<option value="3">Thailand</option>
<option value="3">Turkey</option>
<option value="3">Switzerland</option>
<option value="3">United States of America</option>
<option value="3">Other</option>
</select>
</td>
</tr>
<tr>
<td class="text4" align="right">
Terms and conditions:
</td>
<td>
<div id='##############' class="error_strings"></div>
<input type='checkbox' name='features[]' id='features_item_0' value='terms'/><label for='features_item_0'class="text4"> I agree </label>
</td>
</tr>
<tr>
<td align="right"></td>
<td>
<input type="submit" value="Sign up" />
</td>
</tr>
</table>
</form>
PHP文件:
<?php
// Connects to Database
include("connect.php");
/*
mysql_connect("http://#############", "nickname", "password", "date_of_bith", "country", "terms") or die(mysql_error());
mysql_select_db("#########") or die(mysql_error());
*/
//This code runs if the form has been submitted
if (isset($_POST['submit'])) {
//This makes sure they did not leave any fields blank
if (!$_POST['nickname'] | !$_POST['email'] | !$_POST['passwords'] | !$_POST['date_of_birth'] | !$_POST['country'] | !$_POST['terms']) {
die('You did not complete all of the required fields');
}
// checks if the username is in use
if (!get_magic_quotes_gpc()) {
$_POST['nickname'] = addslashes($_POST['nickname']);
}
$usercheck = $_POST['nickname'];
$check = mysql_query("SELECT user FROM userlogin WHERE nickname = '$nickname'")
or die(mysql_error());
$check2 = mysql_num_rows($check);
//if the name exists it gives an error
if ($check2 != 0) {
die('Sorry, the nickname '.$_POST['nickname'].' is already in use.');
}
// here we encrypt the password and add slashes if needed
$_POST['password'] = md5($_POST['password']);
if (!get_magic_quotes_gpc()) {
$_POST['terms'] = addslashes($_POST['terms']);
$_POST['country'] = addslashes($_POST['password']);
$_POST['date_of_birth'] = addslashes($_POST['date_of_birth']);
$_POST['password'] = addslashes($_POST['password']);
$_POST['email'] = addslashes($_POST['email']);
$_POST['nickname'] = addslashes($_POST['nickname']);
}
// now we insert it into the database
$insert = "INSERT INTO ###### (nickname, email, password, date_of_birth, country, terms)
VALUES ('".$_POST['nickname']."', '".$_POST['email']."', '".$_POST['password']."', '".$_POST['date_of_birth']."', '".$_POST['country']."', '".$_POST['terms']."')";
$add_member = mysql_query($insert);
}
?>
<h1>Registered</h1>
<p>Thank you, you have registered - you may now login <a href="http://##########"> Click here to go to login page</a></p>
感谢您提供给我的任何提示或帮助。
答案 0 :(得分:3)
您的表单没有名称为“提交”的输入,因此if (isset($_POST['submit']))
始终为false。尝试将name="submit"
添加到提交按钮的属性中,这样可以使其至少进一步工作。
编辑:此外,WHERE nickname = '$nickname'
将始终返回0行(除非您的用户名为空用户名也不好),因为您没有PHP变量名称。它应该是WHERE nickname = '$usercheck'
。
答案 1 :(得分:1)
if (isset($_POST['submit'])) {
//....
}
问题出在那里,你没有输入或任何名为submit的东西,所以它没有通过if
答案 2 :(得分:0)
以下应该做什么?
"INSERT INTO ######
您需要为INSERT
提供一个表名。我怀疑您发现此内容的任何来源意味着您将######
替换为您的用户/帐户表的名称。
您的代码还有很多其他问题,但有一些主要问题是:
$_POST['submit']
$_SERVER['REQUEST_METHOD']
。
addslashes
来转义查询数据。您应该检查是否已启用get_magic_quotes_gpc
,如果已启用,请使用stripslashes
删除斜杠,然后使用mysql_real_escape_string
正确转义斜杠。最好只使用PDO。最后一个请求,请请学习格式化,以便它实际上是可读的。使用一致的缩进和间距。
答案 3 :(得分:0)
添加
后尝试<input name="submit" type="submit" value="Sign up" />
答案 4 :(得分:0)
添加或死(mysql_error())以获取SQL错误。