Php 为什么不是';这不是提交给mysql吗?
您正在创建一个允许SQL注入的SQL字符串(最糟糕的方式),然后将其分配给变量“$SQL”Php 为什么不是';这不是提交给mysql吗?,php,mysql,registration,Php,Mysql,Registration,您正在创建一个允许SQL注入的SQL字符串(最糟糕的方式),然后将其分配给变量“$SQL” 就这样。我看不出你以任何其他方式使用那根绳子。您肯定没有将其提交到mysql。您正在创建一个允许SQL注入的SQL字符串(最糟糕的方式),然后将其分配给变量“$SQL” 就这样。我看不出你以任何其他方式使用那根绳子。您肯定没有将其提交到mysql。您必须使用mysql\u query执行查询 <form action="inc/register/register.php" method="post"
就这样。我看不出你以任何其他方式使用那根绳子。您肯定没有将其提交到mysql。您正在创建一个允许SQL注入的SQL字符串(最糟糕的方式),然后将其分配给变量“$SQL”
就这样。我看不出你以任何其他方式使用那根绳子。您肯定没有将其提交到mysql。您必须使用
mysql\u query
执行查询
<form action="inc/register/register.php" method="post" id="userRegistration">
<div class="cen"><h5>User Credentials</h5></div>
<div class="field required">
Username: <input type="text" name="reguser" tabindex="1" /><br />
</div>
<div class="field required">
Password: <input type="password" name="regpass" tabindex="2" /><br />
</div>
<div class="cen"><h5>User Details</h5></div>
<div class="field required">
First Name:<input type="text" name="regfirst" tabindex="3" /><br />
</div>
<div class="field required">
Last Name:<input type="text" name="reglast" tabindex="4" /><br />
</div>
<div class="field required">
Email:<input type="text" name="regemail" tabindex="5" /><br />
</div>
<div class="field required">
Current Class:<select name="regclassrank" tabindex="6">
<option disabled="disabled">Select Class</option>
<option value="1">Freshman</option>
<option value="2">Sophomore</option>
<option value="3">Pre-Junior</option>
<option value="4">Junior</option>
<option value="5">Senior</option>
<option></option>
</select>
</div>
<br />
<div class="cen"><input type="submit" name="submitUser" /></div>
</form>
必须使用
mysql\u query
执行查询
<form action="inc/register/register.php" method="post" id="userRegistration">
<div class="cen"><h5>User Credentials</h5></div>
<div class="field required">
Username: <input type="text" name="reguser" tabindex="1" /><br />
</div>
<div class="field required">
Password: <input type="password" name="regpass" tabindex="2" /><br />
</div>
<div class="cen"><h5>User Details</h5></div>
<div class="field required">
First Name:<input type="text" name="regfirst" tabindex="3" /><br />
</div>
<div class="field required">
Last Name:<input type="text" name="reglast" tabindex="4" /><br />
</div>
<div class="field required">
Email:<input type="text" name="regemail" tabindex="5" /><br />
</div>
<div class="field required">
Current Class:<select name="regclassrank" tabindex="6">
<option disabled="disabled">Select Class</option>
<option value="1">Freshman</option>
<option value="2">Sophomore</option>
<option value="3">Pre-Junior</option>
<option value="4">Junior</option>
<option value="5">Senior</option>
<option></option>
</select>
</div>
<br />
<div class="cen"><input type="submit" name="submitUser" /></div>
</form>
另一种方法是使用PDO
$sql = "INSERT INTO Student (uname, pass, fname, lname, email, currGrade) VALUES('$secUser','$secPass','$_POST[regfirst]','$_POST[reglast]','$_POST[regemail]','$_POST[regclassrank]')";
$result = mysql_query($sql);
if ($result) {
echo "Thanks for signing up!";
} else {
echo "There was an error processing your request. Please try again.";
}
另一种选择是使用PDO
$sql = "INSERT INTO Student (uname, pass, fname, lname, email, currGrade) VALUES('$secUser','$secPass','$_POST[regfirst]','$_POST[reglast]','$_POST[regemail]','$_POST[regclassrank]')";
$result = mysql_query($sql);
if ($result) {
echo "Thanks for signing up!";
} else {
echo "There was an error processing your request. Please try again.";
}
我需要一些代码来告诉我你的意思和我做错了什么,最新的问题确实表明查询了sql字符串,这现在是一个不同的问题。我需要一些代码来告诉我你的意思和我做错了什么,最新的问题确实表明查询了sql字符串,这现在是一个不同的问题。$\u POST[regfirst]'应该是'${u POST['regfirst']}'。。在插入数据库之前,还应该在post变量上使用mysql\u real\u escape\u string或htmlentities,如下所述,SQL InjectionChange$result=mysql\u query($SQL)
到$result=mysql\u query($sql)或die(mysql\u error())代码>并查看它的内容。“$\u POST[regfirst]”应该是“${u POST['regfirst']}”。。在插入数据库之前,还应该在post变量上使用mysql\u real\u escape\u string或htmlentities,如下所述,SQL InjectionChange$result=mysql\u query($SQL)
到$result=mysql\u query($sql)或die(mysql\u error())代码>并查看它的内容。查看更新的php,它在提交时会自动显示“失败”。您几乎没有击败我。删除我的答案,因为你说了同样的话…:p@user700070您可以使用echomysql\u error()
的结果来查看错误,但这很可能是查询中的错误。请看亚当·麦克唐纳在你的问题上发表的评论。这很有效!您能告诉我在哪里添加sql以检查尝试注册的用户名是否已经注册吗?求你了,当然可以。看看。看看更新的php,这会在提交时自动显示“失败”,你几乎没有打败我。删除我的答案,因为你说了同样的话…:p@user700070您可以使用echomysql\u error()
的结果来查看错误,但这很可能是查询中的错误。请看亚当·麦克唐纳在你的问题上发表的评论。这很有效!您能告诉我在哪里添加sql以检查尝试注册的用户名是否已经注册吗?求你了,当然可以。看一看。向上投票是因为它显示了如何避免SQL注入,并回答了问题。向上投票是因为它显示了如何避免SQL注入,并回答了问题。