Insert em duas tabelas com if

SQL

19/02/2020

Boa tarde!!!

Estou tentando fazer um INSERT INTO em duas tabelas ao mesmo tempo, a primeira tabela ele alimenta com sucesso, já o segundo INSERT INTO ele tem um IF e um ELSE, e não alimenta corretamente. Gostaria de um auxílio dos amigos para saber onde estou errando. Segue abaixo meu código:

Na tabela confrontos temos:
id_confrontos / descricao / dt_confronto / id_estadios / id_competicoes / score1 / score2 / clube_mandante / clube_visitante / id_treinadores / situacao / fase / historia

Na tabela painel temos:
id_painel / gols_feitos / gols_contra / id_clubes / id_estadios / id_competicoes / status


<?php
				include "classeConfrontos.php";
				include "config.php";
				if (mysqli_connect_error()) {
					echo "Falha ao conectar no Banco de Dados";
				} else {
					if (isset($_POST['salvar'])) {
						if (@$_POST['id_confrontos'] == "") {
							@$descricao = $_POST['descricao'];
							@$dt_confronto = $_POST['dt_confronto'];
							@$id_competicoes = $_POST['id_competicoes'];
							@$id_estadios = $_POST['id_estadios'];
							@$score1 = $_POST['score1'];
							@$score2 = $_POST['score2'];
							@$clube_mandante = $_POST['clube_mandante'];
							@$clube_visitante = $_POST['clube_visitante'];
							@$situacao = $_POST['situacao'];
							@$fase = $_POST['fase'];
							@$id_treinadores = $_POST['id_treinadores'];
							@$historia = $_POST['historia'];

							$query = "INSERT INTO confrontos (descricao, dt_confronto, id_competicoes, id_estadios, score1, score2, clube_mandante, clube_visitante, situacao, fase, id_treinadores, historia) VALUES ('$descricao','$dt_confronto','$id_competicoes','$id_estadios','$score1','$score2','$clube_mandante','$clube_visitante','$situacao','$fase','$id_treinadores','historia')";	

							if(clube_mandante == "1"){
								$query1 = "INSERT INTO painel (id_competicoes, id_estadios, score1, score2, clube_visitante, situacao) VALUES ($id_competicoes','$id_estadios','$gols_feitos','$gols_contra','$id_clube','$status')";
							}else{
								$query1 = "INSERT INTO painel (id_competicoes, id_estadios, score2, score1, clube_mandante, situacao) VALUES ($id_competicoes','$id_estadios','$gols_feitos','$gols_contra','$id_clube','$status')";
							}

							header("Location: cadastro_confrontos.php");
						}
						$result = $conn->query($query) OR trigger_error($conn->error, E_USER_ERROR);
					}
				}
				?>
				<?php
					include "formCadastraConfrontos.php";
				?>


Desde já, muito obrigado
Carlos Eltz

Carlos Eltz

Curtidas 0

Melhor post

Emerson Nascimento

Emerson Nascimento

19/02/2020

acredito que você não esteja executando a query.

$result = $conn->query($query) OR trigger_error($conn->error, E_USER_ERROR);
aqui você tem o comando para executar a instrução de $query, mas onde está executando a instrução de $query1?

GOSTEI 1

Mais Respostas

Carlos Eltz

Carlos Eltz

19/02/2020

acredito que você não esteja executando a query.

$result = $conn->query($query) OR trigger_error($conn->error, E_USER_ERROR);
aqui você tem o comando para executar a instrução de $query, mas onde está executando a instrução de $query1?



Entendi, vou testar ali, vlw Emerson.
GOSTEI 0
Carlos Eltz

Carlos Eltz

19/02/2020

acredito que você não esteja executando a query.

$result = $conn->query($query) OR trigger_error($conn->error, E_USER_ERROR);
aqui você tem o comando para executar a instrução de $query, mas onde está executando a instrução de $query1?



Entendi, vou testar ali, vlw Emerson.



Igual não rolou :( Talvez tenha algo errado com estas chaves

$query = "INSERT INTO confrontos (descricao, dt_confronto, id_competicoes, id_estadios, score1, score2, clube_mandante, clube_visitante, situacao, fase, id_treinadores, historia) VALUES ('$descricao','$dt_confronto','$id_competicoes','$id_estadios','$score1','$score2','$clube_mandante','$clube_visitante','$situacao','$fase','$id_treinadores','historia')";

							$result = $conn->query($query) OR trigger_error($conn->error, E_USER_ERROR);	

							if(clube_mandante == "1"){
								$query1 = "INSERT INTO painel (id_competicoes, id_estadios, score1, score2, clube_visitante, situacao) VALUES ($id_competicoes','$id_estadios','$gols_feitos','$gols_contra','$id_clube','$status')";
							}else{
								$query1 = "INSERT INTO painel (id_competicoes, id_estadios, score2, score1, clube_mandante, situacao) VALUES ($id_competicoes','$id_estadios','$gols_feitos','$gols_contra','$id_clube','$status')";
							}

							header("Location: cadastro_confrontos.php");
						}

						$result1 = $conn->query($query1) OR trigger_error($conn->error, E_USER_ERROR);
					}
GOSTEI 0
Emerson Nascimento

Emerson Nascimento

19/02/2020

INSERT INTO painel (id_competicoes, id_estadios, score1, score2, clube_visitante, situacao) VALUES ($id_competicoes','$id_estadios','$gols_feitos','$gols_contra','$id_clube','$status')";

talvez esteja faltando aspas simples em $id_competicoes.
INSERT INTO painel (id_competicoes, id_estadios, score1, score2, clube_visitante, situacao) VALUES ('$id_competicoes','$id_estadios','$gols_feitos','$gols_contra','$id_clube','$status')";


GOSTEI 0
Carlos Eltz

Carlos Eltz

19/02/2020

INSERT INTO painel (id_competicoes, id_estadios, score1, score2, clube_visitante, situacao) VALUES ($id_competicoes','$id_estadios','$gols_feitos','$gols_contra','$id_clube','$status')";

talvez esteja faltando aspas simples em $id_competicoes.
INSERT INTO painel (id_competicoes, id_estadios, score1, score2, clube_visitante, situacao) VALUES ('$id_competicoes','$id_estadios','$gols_feitos','$gols_contra','$id_clube','$status')";




Descobri minha rateada Emerson, "painel (id_competicoes, id_estadios, score1, score2, clube_visitante, situacao)", inverti as variáveis, os campos da tabela painel na verdade são "id_painel / gols_feitos / gols_contra / id_clubes / id_estadios / id_competicoes / status", onde era campos do painel coloquei no confronto e vice-versa.

Obrigado pela atenção.
GOSTEI 0
POSTAR