0
I’m in trouble. I have the tables usuario
and aluno
which are related by primary and foreign key. I want to make an insertion with php
to insert data into the two tables, the idusuario
table usuario
should appear in the field idusuario
table aluno
. I saw some examples, but it didn’t work and if anyone can help I would be grateful. follow the tables of the bank, the insertion form and the code php
to insert which I tried to use. The primary key of usuario
connects to the idUsuario
table aluno
.
CREATE TABLE aluno (
idAluno int(11) NOT NULL,
semestre int(50) NOT NULL,
curso varchar(200) NOT NULL,
idUsuario int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE usuario (
idusuario int(11) NOT NULL,
nome varchar(200) NOT NULL,
campus varchar(200) NOT NULL,
sexo varchar(200) NOT NULL,
email varchar(200) NOT NULL,
senha varchar(200) NOT NULL,
tipoUsuario varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
What I’ve done so far:
student bank table
function insereAluno($conexao, $nome, $campus, $sexo, $email, $senha, $tipoUsuario, $semestre, $curso) {
$query = "insert into usuario(nome, campus, sexo, email, senha, tipoUsuario) values ('{$nome}', '{$campus}', '{$sexo}', '{$email}', '{$senha}', '{$tipoUsuario}')";
$query = "insert into aluno (semestre, curso, idUsuario) values ('{semestre}', '{curso}', (select LAST_INSERT_ID(idUsuario)))";
return mysqli_query($conexao, $query);
}
add-student table
$nome = $_POST['nome'];
$campus = $_POST['campus'];
$sexo = $_POST['sexo'];
$email = $_POST['email'];
$senha = $_POST['senha'];
$tipoUsuario = $_POST['tipoUsuario'];
$semestre = $_POST['semestre'];
$curso = $_POST['curso'];
if(insereAluno($conexao, $nome, $campus, $sexo, $email, $senha, $tipoUsuario, $semestre, $curso)) { ?>
<p class="alert">O Aluno <?= $nome ?>, do <?= $semestre ?> semestre foi adicionado. </p>
<?php } else {
$msg = mysqli_error($conexao);
?>
<p class="text-danger">O Aluno <?= $nome ?> não foi adicionado: <?= $msg?> </p>
<?php
}
?>
You want to ask the student id entered is this?
– rray
i want to perform the insertion in the bank. type is a form that has information divided in the two tables. when performing the insertion, the user table must be the same as the student table.
– Jadson Alves
At the top of the question there are two links with the solution of the problem, it is the same doubt. If you have any more questions you can notify a user using an arroba before the name e.g.: @rray.
– rray