Recebendo valor nulo em UPDATE no banco
Boa noite! Estou tentando alterar dados de uma tabela e salvar no banco, consigo alterar, mas não salva. Estou com um código apresentando o seguinte erro: Warning: mysqli_query() expects parameter 1 to be mysqli, null given in /home/salvar_edicao.php on line 28
Se possível, gostaria muito de ajuda. Agradeço desde já.
Se possível, gostaria muito de ajuda. Agradeço desde já.
<?php
session_start();
$errors = array();
// connect to database
$host= "localhost";
$user= "********";
$pass= "*****";
$banco= "***";
$connect= mysqli_connect($host,$user,$pass);
//Criar a conexão mysqli_query($connect,$query)
$db= mysqli_select_db($connect,$banco);
$sql = mysqli_query($connect,"SELECT nome_jogador, posicao_controle, time_controle, numero_gols, categoria_jogador FROM Controle") or die(mysqli_error ($connect));//Alterar o nome da tabela
if ($connect){
echo "<p>sim</p>";
}
else{
echo "<p>não</p>";
$con= mysqli_query($connect, $query);
}
?>
<!DOCTYPE html>
<html >
<head>
<meta charset= utf-8 >
</head>
<body>
<h1>Teste de Exibição</h1>
<table border="1">
<tr>
<th>Nome</th>
<th>Posição</th>
<th>Equipe</th>
<th>N°de Gols Sofridos</th>
<th>Categoria</th>
<th>Ação</th>
</tr>
<?php while($dado = mysqli_fetch_assoc($sql)) { ?>
<tr>
<td><?php echo $dado["nome_jogador"];?></td>
<td><?php echo $dado["posicao_controle"];?></td>
<td><?php echo $dado["time_controle"];?></td>
<td><?php echo $dado["numero_gols"];?></td>
<td><?php echo $dado["categoria_jogador"];?></td>
<td><a href="'editar.php?codigo=".$codigo.">Editar</a></td>
</tr>
<?php } ?>
</table>
</body>
</html>
----------------------------------------------------------------------
<?php
session_start();
$errors = array();
// connect to database
$host= "localhost";
$user= "*****";
$pass= "****";
$banco= "****";
$connect= mysqli_connect($host,$user,$pass);
//Criar a conexão mysqli_query($connect,$query)
$db= mysqli_select_db($connect,$banco);
$sql = mysqli_query($connect,"SELECT nome_jogador, posicao_controle, time_controle, numero_gols, categoria_jogador FROM Controle") or die(mysqli_error ($connect));
if ($connect){
echo "<p>sim</p>";
}
else{
echo "<p>não</p>";
$con= mysqli_query($connect, $query);
}
while ($dado = mysqli_fetch_assoc($sql)) {
$nome= $dado["nome_jogador"];
$posicao= $dado["posicao_controle"];
$equipe = $dado["time_controle"];
$ngols = $dado["numero_gols"];
$categoria = $dado["categoria_jogador"];
?>
<form id="form1" name="form1" method="post" action="salvar_edicao.php">
<input type="text" name="nome" id="nome" value="<?php echo $nome;?>" /><br/>
<input type="text" name="posicao" id="posicao" value="<?php echo $posicao?>" /><br/>
<input type="text" name="equipe" id="equipe" value="<?php echo $equipe;?>" /><br/>
<input type="text" name="ngols" id="ngols" value="<?php echo $ngols;?>" /><br/>
<input type="text" name="categoria" id="categoria" value="<?php echo $categoria;?>" /><br/>
<input type="submit" onClick="return confirm('Deseja atualizar o registro?');" name="Submit" value="SALVAR ALTERAÇÕES" id="button-form" />
</form>
</div></div>
<?php } ?>
_____________________________________
<?php
$nome= $_POST["nome_jogador"];
$posicao= $_POST["posicao_controle"];
$equipe = $_POST["time_controle"];
$ngols = $_POST["numero_gols"];
$categoria = $_POST["categoria_jogador"];
session_start();
$errors = array();
// connect to database
$host= "localhost";
$user= "******";
$pass= "******";
$banco= "*****";
$connect= mysqli_connect($host,$user,$pass);
//Criar a conexão mysqli_query($connect,$query)
$db= mysqli_select_db($connect,$banco);
if ($connect){
echo "<p>sim</p>";
}
else{
echo "<p>não</p>";
$con= mysqli_query($connect, $query);
}
//LINHA DO ERRO
$link= mysqli_query($connet, "UPDATE Controle SET nome_jogador = '{$nome}', posicao_controle = '{$posicao}', time_controle = '{$equipe}', numero_gols = '{$ngols}', categoria_jogador = '{$categoria}' WHERE Controle.nome_jogador == '$nome'");
// mysql_close($link);
?>
Karolaine Coelho
Curtidas 0
Melhor post
Alex William
15/02/2018
Bom dia amiguinho.
Seus parâmetros estão invertidos.
Primeiro passe a string de query e depois a conexão. Tente dessa forma.
Espero ter ajudado. :p
Seus parâmetros estão invertidos.
Primeiro passe a string de query e depois a conexão. Tente dessa forma.
$link= mysqli_query( "UPDATE Controle SET nome_jogador = '{$nome}', posicao_controle = '{$posicao}', time_controle = '{$equipe}', numero_gols = '{$ngols}', categoria_jogador = '{$categoria}' WHERE Controle.nome_jogador == '$nome'",$connet);Espero ter ajudado. :p
GOSTEI 2
Mais Respostas
Alex William
14/02/2018
Bom dia amiguinho.
Seus parâmetros estão invertidos.
Primeiro passe a string de query e depois a conexão. Tente dessa forma.
Espero ter ajudado. :p
Seus parâmetros estão invertidos.
Primeiro passe a string de query e depois a conexão. Tente dessa forma.
$link= mysqli_query( "UPDATE Controle SET nome_jogador = '{$nome}', posicao_controle = '{$posicao}', time_controle = '{$equipe}', numero_gols = '{$ngols}', categoria_jogador = '{$categoria}' WHERE Controle.nome_jogador == '$nome'",$connet);Espero ter ajudado. :p
Outra coisa que eu notei, em determinado momento você passa um operador "==". Em SQL, se eu não me engano, não existe este operador. Use somente "=" na cláusula "WHERE".
GOSTEI 0
Fernando C
14/02/2018
alem do sinal de igual estar errado,
1. a variavel de conexão é "connect"
(não "connet");
2. vc deve usar uma chave primaria na tabela do banco de dados
e usa-la como indice
veja varios exemplos aqui:
https://www.google.com.br/search?q=edicao+de+registros+mysqli+php&ie=utf-8&oe=utf-8&client=firefox-b&gws_rd=cr&dcr=0&ei=Js6FWuCVH4bAwASxnYyYCg
1. a variavel de conexão é "connect"
(não "connet");
2. vc deve usar uma chave primaria na tabela do banco de dados
e usa-la como indice
veja varios exemplos aqui:
https://www.google.com.br/search?q=edicao+de+registros+mysqli+php&ie=utf-8&oe=utf-8&client=firefox-b&gws_rd=cr&dcr=0&ei=Js6FWuCVH4bAwASxnYyYCg
GOSTEI 0
Diego Silva
14/02/2018
Olá Karolaine, você conseguiu resolver seu problema?
GOSTEI 1