Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

nadoweb

Não consigo fazer UPDATE do meu banco de dados

Recommended Posts

Olá pessoal espero que possam me ajudar novamente!

Estou desenvolvendo um sisteminha de notícia, e me deparei com uma página que não estou conseguindo colocar para funcionar adequadamente.

 

Arquivo alterar.php está OK (funcionando perfeitamente, lista os dados normalmente)

 

<?php

// Agora é hora de conectar ao MySQL

 

$conexao = mysql_connect("localhost", "root", "root") or die("Configuração de Banco de Dados errada!");

 

//Selecionado o Banco de Dados

 

$db = mysql_select_db("root") or die("Banco de Dados inexistente!");

 

//Agora realizar a query de busca no banco de dados

 

$sql = "SELECT * FROM noticias WHERE id='$id'";

 

$resultado = mysql_query($sql) or die("Não foi possível realizar a consulta ao banco de dados");

 

//Agora vamos "pegar" cada campo da notícia e organizar no HTML

 

while ($linha=mysql_fetch_array($resultado)) {

 

$id = $linha["id"];

$nome = $linha["nome"];

$sobrenome = $linha["sobrenome"];

$cidade = $linha["cidade"];

$estado = $linha["estado"];

$email = $linha["email"];

$data = $linha["data"];

$hora = $linha["hora"];

$titulo = $linha["titulo"];

$subtitulo = $linha["subtitulo"];

$texto = $linha["texto"];

$ver = $linha["ver"];

 

$novadata = substr($data,8,2) . "/" .substr($data,5,2) . "/" .substr($data,0,4);

$novahora = substr($hora,0,2) . "h" .substr($hora,3,2) . "min";

 

echo "<b>Alterar Cadastro...</b>: $id";

echo "<br>";

echo "<hr><br>";

echo "<form action=\"alterar_db.php?id=$id\" method=\"post\">";

echo "Código da Notícia: <input name=\"id_novo\" type=\"text\" value=\"$id\" size=\"20\">";

echo "<br>";

echo "Data: $novadata<br>";

echo "Hora: $novahora";

echo "<br>";

echo "Nome: <input name=\"nome_novo\" type=\"text\" value=\"$nome\" size=\"30\"><br>";

echo "Sobrenome: <input name=\"sobrenome_novo\" type=\"text\" value=\"$sobrenome\" size=\"30\">";

echo "<br>";

echo "Cidade: <input name=\"cidade_novo\" type=\"text\" value=\"$cidade\" size=\"30\">";

echo "<br>";

echo "Estado: <input name=\"estado_novo\" type=\"text\" value=\"$estado\" size=\"5\"><br>";

echo "E-mail: <input name=\"email_novo\" type=\"text\" value=\"$email\" size=\"30\"><br>";

echo "<input name=\"data_novo\" type=\"hidden\" value=\"$data\">";

echo "<input name=\"hora_novo\" type=\"hidden\" value=\"$hora\">";

echo "Título do Texto: <input name=\"titulo_novo\" type=\"text\" value=\"$titulo\" size=\"30\"><br>";

echo "Subtitulo: <textarea name=\"subtitulo_novo\" rows=\"5\" cols=\"30\">$subtitulo</textarea><br>";

echo ":texto <textarea name=\"texto_novo\" rows=\"5\" cols=\"30\">$texto</textarea><br>";

echo "Ver: <input name=\"ver_novo\" type=\"text\" value=\"$ver\" size=\"5\">";

echo "<input type=\"submit\" value=\"Alterar\">";

echo "</form>";

echo "<br><br>";

echo "<hr>";

}

?>

 

 

Arquivo: alterar_db.php este é o arquivo que está com erro (suponho).

 

<?php

// Agora é hora de conectar ao MySQL

 

$conexao = mysql_connect("localhost", "root", "root") or die("Configuração de Banco de Dados errada!");

 

//Selecionado o Banco de Dados

 

$db = mysql_select_db("root") or die("Banco de Dados inexistente!");

 

//Agora, com as variáveis de data e hora criadas, vamos criar uma variável especial para a querie sql

 

$sql = "UPDATE noticias SET id='$id_novo',nome='$nome_novo',sobrenome='$sobrenome_novo',cidade='$cidade_novo',estado='$estado_novo',email='$email_novo',data='$data_novo',hora='$hora_novo',titulo='$titulo_novo',subtitulo='$subtitulo_novo',texto='$texto_novo',ver='$ver_novo' WHERE id='$id'";

 

//Inserindo os dados

 

$resultado = mysql_query($sql) or die("Não foi possível realizar a consulta ao banco de dados.");

 

echo "<h1>Notícia alterada com sucesso!</h1>";

 

?>

 

Por favor me ajudem, estou realmente precisando deste sisteminha.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

 

Mostra alguma mensagem de erro??

 

altere:

$resultado = mysql_query($sql) or die("Não foi possível realizar a consulta ao banco de dados.");

por:

$resultado = mysql_query($sql) or die(mysql_error())
para ver qual a mensagem de erro

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

 

Mostra alguma mensagem de erro??

 

altere:

$resultado = mysql_query($sql) or die("Não foi possível realizar a consulta ao banco de dados.");
por:

$resultado = mysql_query($sql) or die(mysql_error())
para ver qual a mensagem de erro

 

Oi Regina!

A mensagem de erro que surge é a seguinte:

 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'off'' WHERE id='3'' at line 1

 

Veja o que você pode fazer por mim. Obrigado.

 

 

Olá!

 

Mostra alguma mensagem de erro??

 

altere:

$resultado = mysql_query($sql) or die("Não foi possível realizar a consulta ao banco de dados.");
por:

$resultado = mysql_query($sql) or die(mysql_error())
para ver qual a mensagem de erro

 

Oi Regina!

A mensagem de erro que surge é a seguinte:

 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'off'' WHERE id='3'' at line 1

 

Veja o que você pode fazer por mim. Obrigado.

 

Regina, consegui resolver era os sinais ''' no id:

 

Obrigado pela sua ajuda, valeu mesmo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Suponho que ele não esteja pegando o valor da variavel $id

 

coloca assim antes do $sql

 

$id = $_GET['id'];

 

Qualquer coisa posta aí!

 

Consegui resover com o mysql_error():

Verifiquei o erro e descobri que eram os caracteres ''' no id

 

Muito obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.