在数据库中插入新用户

Inserting new users in database

我试图在我的数据库中插入新用户,但每次我这样做时,我的页面只会刷新,而不是指向 should.The 查询正确的位置 one.This是我目前使用的代码。

<?php
require_once('bd.inc.php'); 
if (!empty($_POST["submit"])){
if($_POST['submit']==1){}
// verificar se foi submetido o formulário... se sim verificar dados submetidos e enviar info para a base de dados
$nome1 = $_POST['1_nome'];
$nome2 = $_POST['2_nome'];
$email = $_POST['email'];
$username = $_POST['username'];
$password = $_POST['password'];

    //          Cmd Inserir   Tabela                valores
    $comando = "INSERT INTO utilizadores VALUES ('', '$nome1', '$nome2','$email','$username','$password','2')"; // pergunta a enviar à BD
    $resultado = mysqli_query($ligacao,$comando) or die ("Operação inválida");

    if(mysqli_affected_rows($ligacao))
         echo "Operação efectuada";

    header('location: backoffice.php?msg=ok');// passamos a variavel msg por get de forma a podermos apresentar a informação de sucesso na página de listar utilizadores
}

?>

<html>
<head>
<meta charset="utf-8">
 <link href='css/login.css' rel='stylesheet' type='text/css'>
 <title>Backoffice</title>
<meta charset="utf-8">
</head>
<body>
<div id="main" style="max-width:400px;margin-left:450px;margin-top:90px;">
<form name="formulario" action="registar.php" method="post" />
<legend>Registe-se</legend>
<p>Primeiro Nome</p><input type="text" class="form" name="1_nome"/> </br>
<p>Segundo Nome</p><input type="text" name="2_nome"/> </br>
<p>Email</p><input type="email" name="email"/> </br>
<p>Username</p><input type="text" name="username"/> </br>
<p>Password</p><input type="password" name="password"/> </br>
<button type="submit" name="submit" />Registe-se</button>
</div>

</form>
</body>
</html>

前几题有些无效HTML,</br>应该是<br /><form> 应该在外部 div 之前关闭,等等。但是主要的问题,以及似乎没有任何事情发生的原因是因为你的提交按钮:

<button type="submit" name="submit" />Registe-se</button>

$_POST["submit"] 的值取决于您的 value 属性,在您的情况下,由于存在 none,它始终为空。只需为您的按钮分配一个不是 1

的值
<button type="submit" name="submit" value="someValue" />Registe-se</button>

或者如果您不想为提交按钮分配值,则检查其他值,例如 $_POST['1_nome'] 是否为空。这将允许您的代码访问您的查询。

它只刷新的原因是 if (!empty($_POST["submit"])) 的正文中没有任何内容被执行。因为 $_POST["submit"] 什么都不包含。

将表单元素更新为以下内容就足够了。

<button type="submit" name="submit" value='something' />Registe-se</button>