Ir para conteúdo
  • 0

[Duvida] - UPDATE MySQL


zlDeath

Pergunta

Então... Estou tentando fazer uma paradinha de atualizar tabelas usando o mysql UPDATE, porem quando eu coloco o que quero editar e clico em "Editar" vai para a update.php mostra a mensagem de Sucesso porem nas tabelas nada atualiza

 

 

conexao.php

 

<?php
$server = "localhost";
$banco = "mc_lobby";
$usuario = "root";
$senha = "pass";


$conexao = mysql_connect($server, $usuario, $senha);

$conexao = mysql_select_db("$banco",$conexao);


if(!$conexao){ echo mysql_error(); exit; }

?>

 

 

 

form_edit_clientes.php

 

<!DOCTYPE html>
<html>
<head>
	<title>Index</title>
</head>
<body>
<?php
include("conexao.php");


  $id = $GET_["id"];

  $sql = mysql_query("select * from iconomy where id='$id'");

  $exibe = mysql_fetch_assoc("$sql");


?>


<form action="update.php" method="post"><fieldset><legend>Editor de Usuarios</legend>


<br>Nick: <input type="text" name="username" value="<?php echo $exibe["username"]; ?>">
<br>Saldo: <input type="text" name="balance" value="<?php echo $exibe["balance"]; ?>">
<br>Status: <input type="text" name="status" value="<?php echo $exibe["status"]; ?>">
<br>
<br>

<input type="submit" name="" value="Editar">


	</fieldset>
</form>

</body>
</html>

 

 

 

update.php

 

<?php

include("conexao.php");

		$id = $_POST['id'];
		$username =  $_POST['username'];
		$balance =  $_POST['balance'];
		$status =  $_POST['status'];

	 if(mysql_query("update iconomy set username='$username', balance='$balance', status='$status' where id='$id'")){

	 	echo "Alterado !";
	 	exit;
	 }else
	 {
	 	echo mysql_error();
	 	exit;
	 }


 

?>

 

 

 

Também nao mostra os value de:

<br>Status: <input type="text" name="status" value="<?php echo $exibe["status"]; ?>">

 

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

Você está verificando se é possível fazer o UPDATE e dando um exit, por isso não está funcionando.


 


Tente isso:



$comando = mysql_query("UPDATE iconomy SET username='$username', balance='$balance', status='$status' WHERE id=$id");
 
if(mysql_affected_rows() != 0){
echo "Alterado !";
}else{
echo mysql_error();
exit;
}

Quanto ao Status, basta remover as aspas simples do where.


Por se tratar de uma variável não são necessárias.



WHERE id='$id' 

Lembrando que a função:



mysql_fetch_assoc();

Está obsoleta desde o PHP 5.5.0 e foi removida no PHP 7.7.0, então se o seu servidor local está usando a versão mais atual do php, não irá funcionar.


Eu recomendo que você comece a utilizar PDO para as conexões com banco de dados, é bem mais seguro.


Editado por araujoh
Link para o comentário
Compartilhar em outros sites

 

Você está verificando se é possível fazer o UPDATE e dando um exit, por isso não está funcionando.

 

Tente isso:

$comando = mysql_query("UPDATE iconomy SET username='$username', balance='$balance', status='$status' WHERE id=$id");
 
if(mysql_affected_rows() != 0){
echo "Alterado !";
}else{
echo mysql_error();
exit;
}

Quanto ao Status, basta remover as aspas simples do where.

Por se tratar de uma variável não são necessárias.

WHERE id='$id' 

Lembrando que a função:

mysql_fetch_assoc();

Está obsoleta desde o PHP 5.5.0 e foi removida no PHP 7.7.0, então se o seu servidor local está usando a versão mais atual do php, não irá funcionar.

Eu recomendo que você comece a utilizar PDO para as conexões com banco de dados, é bem mais seguro.

 

Ainda não consegui... Teria como me adicionar skype ?? yd34th

Link para o comentário
Compartilhar em outros sites

usa pdo maluco

$dbName = "mc_lobby";
$hostName = "localhost";

$dsn = "mysql:dbname=".$dbName.";host=".$hostName;
$user = "root"
$pass = "pass";

try{
	$conexao = new PDO($dsn, $user, $pass);
}catch(PDOException $e){
	echo "Error: ".$e->getMessage();
}

/**
 *
 * 
 */

  $id = $GET_["id"];

  $sql = $conexao->query("SELECT * FROM iconomy WHERE id= '$id'");
  $exibe = $sql->fetchAll(PDO::FETCH_ASSOC);


/**
 *
 * 
 */

		$id = addslashes($_POST['id']);
		$username =  addslashes($_POST['username']);
		$balance =  addslashes($_POST['balance']);
		$status =  addslashes($_POST['status']);

		$query = "UPDATE iconomy SET username = '".$username."', balance='".$balance."', status = '".$status."' WHERE ID = '".$id."'");
		$conexao->query($query);

		echo "Update realizado.";
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...