-4
<?php
if(isset($_POST['submit']))
{
$uname=$_POST['uname'];
$pswd=$_POST['pswd'];
$cpswd=$_POST['cpswd'];
$fname=$_POST['fname'];
$lname=$_POST['lname'];
$email=$_POST['email'];
$address=$_POST['add'];
$mobile=$_POST['mobile'];
$con=mysqli_connect("localhost","root","","registration");
$sql1="select usname, email from registration1 where usname='$uname' or email='$email'";
$query=mysqli_query($con,$sql1) or die(mysqli_error($con));
$rownum=mysqli_num_rows($query);
if($rownum != 0)
{
echo "User With This User Name or Email Address Is Already Available";
}
else
{
$sql2="insert into registration1 (usname,psswd,fsname,lsname,email,address,mobileno) values ('$uname','$pswd','$fname','$lname','$email','$address','$mobile')";
mysqli_query($con,$sql2) or die(mysqli_error($con));
echo "Registration Successful";         
}
}
?>

我正在重定向到以表单操作编写的 home.php,其中的 php 代码没有执行。谁能帮我解决这个问题

这是我的 html 代码,我在单击提交按钮时重定向到主页 .php 在文本框中输入的值未在单击提交按钮时进入数据库。

`<html>
<head>
<title>Registration Form</title>
</head>
<body>
<center>
<form  method="post" action="home.php">
<table> 
<tr>
<td>
<p>User Name</p>
</td>
<td>
<input type="text" name="uname"/>
</td>
</tr>
<tr>
<td>
<p>Password</p>
</td>
<td>
<input type="password" name="pswd" />
</td>
</tr>
<tr>
<td>
<p>Confirm Password</p>
</td>
<td>
<input type="password" name="cpswd" />
</td>
</tr>
<tr>
<td>
<p>First Name</p>
</td>
<td>
<input type="text" name="fname" />
</td>
</tr>
<tr>
<td>
<p>Last Name</p>
</td>
<td>
<input type="text" name="lname" />
</td>
</tr>
<tr>
<td>
<p>Email Address</p>
</td>
<td>
<input type="email" name="email" />
</td>
</tr>
<tr>
<td>
<p>Address</p>
</td>
<td>
<input type="text" name="add" />
</td>
</tr>
<tr>
<td>
<p>Mobile No.</p>
</td>
<td>
<input type="text" name="mobile" />
</td>
</tr>
<tr>
<td>
<input type="submit" value="submit" name="submit" />
</td>
</tr>
</table>
</form>
</center>
</body>
</html>`
4

3 回答 3

0

首先想说请正确描述错误。可能有很多原因。

选项 1:可能 $_POST['submit'] 或其他值未正确初始化。那么它永远不会进入 if 块

选项 2:$con=mysqli_connect("localhost","root","password"); 检查此连接建立是否正常。

选项3:我不确定。但我认为在获取多列时需要使用数组()。

请调试代码..找出代码停止执行的那一行之后。您可以使用 echo 'xxx' 来执行此操作;作为您代码中的检查点并报告我们

注意:使用mysqli_real_escape_string()和各种 php mysqli 函数来防止 mysqli 注入

于 2013-06-30T20:28:56.757 回答
0

如果没有输出/没有错误..请确保 $_POST['submit'] 变量是从..

于 2013-06-30T20:31:59.733 回答
0
<input type="submit" value="submit" name="submit" /> 
<input type="hidden" name="submit" value="submit"  />
</form>

这就是你的表单应该如何完成..添加隐藏类型

编辑 1:如果它不起作用。然后将echo 'step 1,2,3...'放在 home.php 中。并检查它停止执行的语句之后。例如,您可以在 if( ) 检查它是否进入你的 if 块

于 2013-07-02T15:36:11.947 回答