Fórum Cadastrar mais de um item e listar #595685
24/07/2018
0
Não estou conseguindo cadastrar mais de um produto
Seria listado alguns exercícios e assim os que forem preenchidos, será adicionados no bd
1. Adicionei "produtos" no banco de dados
2. ID, nome, grupo, imagem, id_quem_add
3. Listei todos "produtos" adicionados no banco de dados
4. (Duvida) Adicionar um ou mais "produto" para um usuário selecionado e salvar junto uma informação adicional
5. Mostrar só os produtos que foram adicionados para o usuário
Segue imagem
https://i.stack.imgur.com/sBKlf.png
O que estou tentando (pra unir os que foi adicionado, estou criando um numero com RAND e adicionando o mesmo pra cada)
<?php
if(isset($_POST['cadastrar']) && $_POST['cadastrar'] == "register"){
$NomeTreino = $_POST['nometreino'];
$AlunoTreino = $_POST['aluno'];
$NomeInstrutorTreino = $_POST['nomeinstrutor'];
$DataTerminoTreino = $_POST['datatermino'];
$ExercicioTreino = $_POST['exercicio'];
$ObsExercicioTreino = $_POST['observacao'];
$SeriesExercicioTreino = $_POST['series'];
// Gera um ID aleatorio
$IdTreino = rand(0, 99999);
// VERIFICA SE ESCREVEU NOS CAMPOS
if(empty($NomeTreino) || empty($AlunoTreino) || empty($NomeInstrutorTreino) || empty($DataTerminoTreino)){
echo"<code class='btn-danger center-block text-center'>Preencha todos os campos.</code>";
}else{
$query ="SELECT * FROM treinos WHERE nome = '$NomeTreino'";
$result = mysql_query($query);
$conta = mysql_num_rows($result);
$busca = mysql_fetch_assoc($result);
if($conta > 0){
echo"Desculpe, já existe um treino cadastrado com o mesmo nome.";
}else{
$cadastrar = "INSERT INTO treinos (id_conexao, nome, aluno, instrutor, data, exercicio, obs, series) VALUE ('$IdTreino', '$NomeTreino', '$AlunoTreino', '$NomeInstrutorTreino', '$DataTerminoTreino', '$ExercicioTreino', '$ObsExercicioTreino', '$SeriesExercicioTreino')";
if(mysql_query($cadastrar)){
echo "<code class='btn-success center-block text-center'>Treino adicionado com sucesso!</code>";
echo("<script>window.location = 'treinos.php';</script>");
}else{
echo "<code class='btn-danger center-block text-center'>Não foi possível cadastrar este treino.</code>";
}
}
}
}
?>
Lucas
Curtir tópico
+ 0Post mais votado
25/07/2018
O seu RAND, para gerar a primary key, não é a melhor das opções, pois esse número pode se repetir. Uma maneira bem fácil de cuidar desse problema, é usar o auto_increment, do MySQL. Segue como fazer:
CREATE TABLE TREINOS
(
ID_CONEXAO INT NOT NULL AUTO_INCREMENT,
....
PRIMARY KEY(ID_CONEXAO)
)
Utilizando esse recurso, quando você fazer o Insert, não passe por parâmetro o ID, ele não precisa constar no seu Insert, que o MySQL cuidará do preenchimento dele.
Fernando Duwe
Gostei + 1
Mais Posts
25/07/2018
Lucas
Criar uma ID que vai ser colocado em todos exercicios que vai ser cadastrado na hr
Gostei + 0
25/07/2018
Lucas
Mas esse ID é usado pra conectar todos exercicios cadastrados juntos no mesmo TREINO
Talvez seria mais fácil eu criar um checkbox e os que eu selecionar vai ser criado na tabela mas não sei como posso fazer isso
Gostei + 0
25/07/2018
Fernando Duwe
Veja se esse exemplo lhe ajuda: https://www.formget.com/php-checkbox/
Você pode listar os diversos exercícios que você tem em banco, e gravar os que o usuário selecionou, nos checkbox. Caso tenha alguma dúvida como fazer, pode me contatar.
Gostei + 0
01/08/2018
Lucas
Gostei + 0
02/08/2018
Lucas
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)