M
1st I want that by clicking on my Submit button, the addToDB() function is executed and at this time I do not understand the process of how to do it.Your code is all mixed up. The function of PHP will not run on the client. You should create a page PHP to process your form data and put in your action form:index.php:<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" href="mystyle_inserir.css">
<link rel="stylesheet" type="text/css" href="w3schoolsExample.css">
<title>Inserir utilizador</title>
<style>
form label{
display: inline-block;
width: 100px;
font-weight: bold;
}
</style>
</head>
<body>
<h2>Exemplo de inserção numa MySQL database ao usar PHP</h2>
<br><br>
<form action="form.php" method="post">
<label for="nome">Nome: </label> <input type="text" name="nome" />
<br><br>
<label for="cargo">Cargo: </label> <input type="text" name="cargo" />
<br><br>
<label for="email">E-Mail: </label> <input type="text" name="email" />
<br><br>
<label for="localidade">Localidade: </label> <input type="text" name="localidade" />
<br><br>
<label for="setor">Setor de Trabalho: </label> <input type="text" name="setor" />
<br><br>
<label for="telefone">Telefone: </label> <input type="text" name="telefone" />
<br><br>
<label for="salario">Salario (/h): </label> <input type="text" name="salario" />
<br><br>
<label for="horario">Horário (QT horas): </label> <input type="text" name="horario" />
<br><br>
<input type="submit" value="submit">
</form>
</body>
</html>
form. php:
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Conecção falhou: " . mysqli_connect_error() );
}
// echo "Conectado";
$nome = $_POST['nome'];
$cargo = $_POST['cargo'];
$email = $_POST['email'];
$localidade = $_POST['localidade'];
$setor = $_POST['setor'];
$telefone = $_POST['telefone'];
$salario = $_POST['salario'];
$horario = $_POST['horario'];
$sql = "INSERT INTO trabalhador (nome, cargo, email, localidade, setor, telefone, salario, horario)
VALUES ($nome, $cargo, $email, $localidade, $setor, $telefone, $salario, $horario)";
if (mysqli_query($conn, $sql)) {
echo "Adicionado com sucesso";
} else {
echo "Erro: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
?>
VARCHAR type data needs to be formatted as follows:
-> "Working name", between quotes to be acceptedJust update your query:// ...
$sql = "INSERT INTO trabalhador (nome, cargo, email, localidade, setor, telefone, salario, horario)
VALUES ('$nome', '$cargo', '$email', '$localidade', '$setor', '$telefone', '$salario', '$horario')";
// ...
It is worth remembering that in this way your system gets BEE vulnerable. Best way to perform such queries (when it comes data from some input) is using the so-called http://php.net/manual/pt_BR/mysqli.quickstart.prepared-statements.php ...Remembering: PHP is run on the server. HTML is run on the client. That means you can't call a function the PHP No HTML...