Cadastrar mais de um item e listar
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
Post 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
Mais Posts
25/07/2018
Lucas
Criar uma ID que vai ser colocado em todos exercicios que vai ser cadastrado na hr
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
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.
01/08/2018
Lucas
02/08/2018
Lucas
Clique aqui para fazer login e interagir na Comunidade :)