如何提交3个不同的表单在PHP中只有一个按钮



我正在创建一个多步骤表单,需要"上传"/保存一些信息到数据库中。它由三种形式组成。问题是,只有最后一个表单发送信息,这也是提交按钮的位置。

代码示例如下:

<form action="">
<div class="form-group">
<label for="">Nome Completo</label>
<input type="text" name="" placeholder="Nome e sobrenome" id="" class="form-control" />
</div>
<div class="form-group">
<label for="">E-mail</label>
<input type="email" name="" placeholder="E-mail para contato" id="" class="form-control" />
</div>
<div class="form-group">
<label for="">CPF</label>
<input type="text" name="ccpf" placeholder="Ex: 000.000.000-00" id="" class="form-control" />
</div>
<div class="form-group">
<label for="">Data de Nascimento</label>
<input type="text" name="" placeholder="Ex: 01-12-1999 " id="" class="form-control" />
</div>
<div class="form-group">
<label for="">Endereço</label>
<input type="text" name="" placeholder="Ex: Av. Paulista, 99 - São Paulo - SP - 99999-99 " id="" class="form-control" />
</div>
<div class="form-group">
<label for="">Telefone</label>
<input type="text" name="" placeholder="Número para eventuais contatos. Ex: (99)99999-9999" id="" class="form-control" />
</div>
<div class="form-group">
<label for="">Gênero</label>
<select class="custom-select myinput" name="class" id="class">
<option value="male">Homem</option>
<option value="female">Mulher</option>
<option value="other">Outros</option>
</select>
</div>
<div class="button-row">
<input type="button" value="Próximo" class="next" />
</div>
</form>
</div>
<div class="form-box">
<ul class="active-button">
<li class="active">
<span class="round-btn">1</span>
</li>
<li class="active">
<span class="round-btn">2</span>
</li>
<li>
<span class="round-btn">3</span>
</li>
</ul>
<h4>Educação e Formação Acadêmica</h4>
<form action="">
<div class="form-group">
<label for="">Instituições Frequentadas | Diploma | Data de
Conclusão</label>
<input type="text" name="" placeholder="Instituição 1" id="" class="form-control" />
<input type="text" name="" placeholder="Instituição 2" id="" class="form-control" />
<input type="text" name="" placeholder="Instituição 3" id="" class="form-control" />
</div>
<div class="form-group">
<label for="">Habilidades e Qualificações</label>
<input type="text" name="" placeholder="Ex: Excel Avançado, PowerBI, Python.. (SEPARE POR ',')" id="" class="form-control" />
</div>
<div class="form-group">
<label for="">Idiomas</label>
<input type="text" name="cidiomas" placeholder="Ex: PT NATIVO, EN C2, FR A1.. (SEPARE POR ',')" id="" class="form-control" />
</div>
<div class="button-row">
<input type="button" value="Anterior" class="previous" />
<input type="button" value="Próximo" class="next" />
</div>
</form>
</div>
<div class="form-box">
<ul class="active-button">
<li class="active">
<span class="round-btn">1</span>
</li>
<li class="active">
<span class="round-btn">2</span>
</li>
<li class="active">
<span class="round-btn">3</span>
</li>
</ul>
<h4>Experiência de trabalho</h4>
<form action="./edit_info.php" method="POST">
<div class="form-group">
<label for="">Última Experiência</label>
<input type="text" name="cempregador1" placeholder="Empregador" id="" class="form-control" />
<input type="text" name="" placeholder="Data de entrada e saida. Ex: 12/2018 - 06/2020" id="" class="form-control" /><input type="text" name="" placeholder="Cargo e Responsabilidades" id="" class="form-control" /><input type="text" name="" placeholder="Salário" id="" class="form-control" /><input type="text" name="" placeholder="Motivo de Saída" id="" class="form-control" />
</div>
<div class="form-group">
<label for="">Penúltima Experiência</label>
<input type="text" name="" placeholder="Empregador" id="" class="form-control" />
<input type="text" name="" placeholder="Data de entrada e saida. Ex: 12/2018 - 06/2020" id="" class="form-control" /><input type="text" name="" placeholder="Cargo e Responsabilidades" id="" class="form-control" /><input type="text" name="" placeholder="Salário" id="" class="form-control" /><input type="text" name="" placeholder="Motivo de Saída" id="" class="form-control" />
</div>
<div class="form-group">
<label for="">Antepenúltima Experiência</label>
<input type="text" name="" placeholder="Empregador" id="" class="form-control" />
<input type="text" name="" placeholder="Data de entrada e saida. Ex: 12/2018 - 06/2020" id="" class="form-control" /><input type="text" name="" placeholder="Cargo e Responsabilidades" id="" class="form-control" /><input type="text" name="" placeholder="Salário" id="" class="form-control" /><input type="text" name="" placeholder="Motivo de Saída" id="" class="form-control" />
</div>
<div class="button-row">
<input type="button" value="Anterior" class="previous" />
<input type="submit" value="Finalizar" class="submit" name="editar" />
</div>
</form>

正如我所说的,只有最后一个表单将数据发送到同一根文件夹(./edit_info.php)中的另一个php文件,以保存在数据库中:

<?php
include('../config.php');
if (isset($_POST["editar"])) {
$cpf = mysqli_real_escape_string($conn, $_POST["ccpf"]);
$idiomas = mysqli_real_escape_string($conn, $_POST["cidiomas"]);
$empregador1 = mysqli_real_escape_string($conn, $_POST["cempregador1"]);
$query = "UPDATE usuarios SET cpf='$cpf', idiomas='$idiomas', empregador1='$empregador1' WHERE ID = 5";
if (mysqli_query($conn, $query)) {
header('Location: ../../login/painel.php');
"<script type='text/javascript'>alert('Usuario cadastrado com sucesso!');</script>";
exit();
} else {
echo "<script type='text/javascript'>alert('Falha ao cadastrar usuario. Tente novamente.');history.go(-1);</script>";
}
}

也就是说,只有$empregador1 = mysqli_real_escape_string($conn, $_POST["cempregador1"]);正在接收数据。

欢迎任何帮助!

创建一个按钮并使用jQuery进行按钮单击,如果数据要提交到一个地方,则可以使用serialize()函数将这些表单中的所有数据捆绑到单个json数组中。

或者直接从这三个

中创建一个表单

最新更新