我有两个字段“名称”和“用户名”。我正在检查用户名的可用性,我可以检查。我的问题在于我显示表单的方式。我想实现
- 在显示用户名的同一行但在第三列中显示消息。
- 在显示消息时,它应该显示以前输入的值。
我想用 html、javascript 和 php 来实现这一点。我不想使用任何其他语言或技术
Login.php 正在构建表单。
<?php
include 'login2.php';
function form($name, $username)
{
?>
<form name="mylogin" method="post">
<table>
<tr><td>Name</td>
<td><input type="text" id="name" name="name" value="<?php echo $name?>" required></td></tr>
<tr><td>Username</td>
<td><input type="text" id="user" name="user" value="<?php echo $username?>" required></td>
<td id="messgae"></td>//want to display message over here have tried value"<?php echo $message"?>
</tr>
<tr><td><input type="submit" name="submit" value="Username Availability Check"></td></tr>
<?php usercheck()?>
</table>
</form>
<?php
}
?>
<?php
form('','')
?>
在 Login2.php 中,我只是检查用户名,现在我没有插入值,因此插入查询被注释并由用户发回输入的值。我面临的问题是,单击提交按钮或用户可用性检查按钮后,表单会显示两次。我知道它正在发生,因为我两次调用该函数但如何避免它?
代码
<?php
function connect()
{
mysql_connect('localhost','root','password');
mysql_select_db('loginprac');
}
function usercheck()
{
if(isset($_POST['submit']))
{
connect();
$name=$_POST['name'];
$user = mysql_real_escape_string($_POST['user']);
$check_for_username = mysql_query("SELECT user from userpage WHERE user = '$user'");
$count = mysql_num_rows($check_for_username);
if($count != 0)
{
form($name,$user);
}
}
}
/*function insert()
{
connect();
if(isset($_POST['submit']))
{
usercheck();
$name=$_POST['name'];
$user=$_POST['user'];
$sql1= "INSERT INTO userpage (name,user) VALUES ('$name','$user')";
mysql_query($sql1);
}
}*/
?>