Jump to content


Photo

Difilculdade Em Fazer Update No Banco


  • Faça o login para participar
14 replies to this topic

#1 Ronaldo

Ronaldo

    Mu X-Plosion - MUOnline Server

  • Usuários
  • 310 posts
  • Sexo:Não informado
  • Localidade:Nova Xavantina - MT

Posted 17/07/2006, 00:09

Não sei onde esta o erro, creio que seja em não estar informando corretamente o nome no banco de dados para que seja feito a alteração vamos la:

formulario

<form name="form1" method="post" action="info.php">
<label>
<input name="nome" type="text" id="nome">
</label>
<label>
<input type="submit" name="Submit" value="Buscar">
</label>
</form>


Pagina que recebe os dados do formulario infor.php

<?
$busca=" SELECT AccountID, Money, pw, LASTPW FROM warehouse WHERE AccountID = '$nome'";
$resultado = mssql_query ($busca);
$informacoes= mssql_fetch_row($resultado);
$nome = $informacoes[0];
$Money = $informacoes[1];
$pw = $informacoes[2];
$LASTPW = $informacoes[3];

echo "<form name='form1' method='post' action='alterabau.php'>
<table width='300' border='0' cellspacing='0' cellpadding='0'>
<tr>
<td>$nome</td>
</tr>
<tr>
<td><input name=name type=text value='$Money' id=Money>
Dinheiro do Ba&uacute; </td>
</tr>
<tr>
<td><input name=name type=text value='$pw' id=pw>
Senha do Ba&uacute; </td>
</tr>
<tr>
<td><input name=name type=text value='$LASTPW' id=LASTPW>
Senha de prote&ccedil;&atilde;o </td>
</tr>
</table>
<p>
<label>
<input type='submit' name='Submit' value='Alterar'>
</label>
<label>
<input type='reset' name='Submit2' value='Desfazer'>
</label>
</p>
</form>
";
?>


pagina que recebe os dados do formulario acima alterabau.php

<?
$nome = $_POST['AccountID'];
$Money = $_POST['Money'];
$pw = $_POST['pw'];
$LASTPW = $_POST['LASTPW'];

$update = "UPDATE dbo.warehouse set Money='$Money', pw='$pw', LASTPW='$LASTPW' WHERE AccountID = '$nome'";
$resultado = mssql_query ($update);
echo"Alterações feitas..."
?>


BLZ faz tudo certinho aparece a mensagem alterações feitas...

porem não altera nada no banco ;) e não sei onde esta o erro? estou fazendo esse script para uma simples alteração no banco de dados
Mu X-Plosion - Qualidade em primeiro lugar!
Mu X-Plosion - MuOnline como você nunca viu antes!
Mu X-Plosion - O Melhor MU que você já viu!
Mu X-Plosion - Por que não basta ser o melhor tem que oferecer o melhor e a maior qualidade!

#2 palhadecoco

palhadecoco

    12 Horas

  • Usuários
  • 206 posts
  • Sexo:Não informado
  • Localidade:Itacaré - Bahia
  • Interesses:Ajuda e Ajudar

Posted 17/07/2006, 00:28

amigo pelo o q eu to vendo o problema está no seu formulário, vc está definindo o INPUT erado :

se é LASTPW então
<input name=LASTPW ... e ñ <input name=name ...

e tambem veja esse erro na página de UPDATE a sua query está assim:


$resultado = mssql_query ($update);


conscerte:

mssql_query
para
mysql_query

bomacho q é só isso.

#3 Ronaldo

Ronaldo

    Mu X-Plosion - MUOnline Server

  • Usuários
  • 310 posts
  • Sexo:Não informado
  • Localidade:Nova Xavantina - MT

Posted 17/07/2006, 00:39

amigo acho que não é isso não veja eu mudei

<input name=Money type=text value='$Money' id=Money> 
<input name=pw type=text value='$pw' id=pw>
<input name=LASTPW type=text value='$LASTPW' id=LASTPW>


no update esta certo sim por que meu db é mssql e não mysql mais o php é o mesmo :)
Mu X-Plosion - Qualidade em primeiro lugar!
Mu X-Plosion - MuOnline como você nunca viu antes!
Mu X-Plosion - O Melhor MU que você já viu!
Mu X-Plosion - Por que não basta ser o melhor tem que oferecer o melhor e a maior qualidade!

#4 palhadecoco

palhadecoco

    12 Horas

  • Usuários
  • 206 posts
  • Sexo:Não informado
  • Localidade:Itacaré - Bahia
  • Interesses:Ajuda e Ajudar

Posted 17/07/2006, 00:56

Bom amigo, eu estou abafadoa abora para analizar melhor seu script, mas para ñ passar em branco

no
<INPUT VALUE='....' vc faz <INPUT VALUE="...."

tal vez ñ seja isso mesmo mas faz um teste ai. to morto de cansado!!!

#5 Dudu

Dudu

    Viva la vida

  • Usuários
  • 1437 posts
  • Sexo:Masculino
  • Localidade:Uberlândia - MG
  • Interesses:PHP

Posted 17/07/2006, 01:17

Palhadecoco, com aspas duplas ou não, isso não faz diferença, a não ser que esteja em um echo, pois assim se você tiver aspas dupla, você terá que usar <input type=\"text\" value=\"...\">.
Testa assim na página de update:

<?
$nome = $_POST['AccountID'];
$Money = $_POST['Money'];
$pw = $_POST['pw'];
$LASTPW = $_POST['LASTPW'];

$update = "UPDATE dbo.warehouse SET Money='$Money', pw='$pw', LASTPW='$LASTPW' WHERE AccountID = '$nome'";
$resultado = mssql_query("$update");

if($resultado) {
echo "Alterações feitas.";
}else{
echo "Não foi possível fazer as alterações.";
}
?>

Até mais ^_^

Edição feita por: _Dudu_1533, 17/07/2006, 01:20.

Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Moderador


Twitter: HostCheap


#6 palhadecoco

palhadecoco

    12 Horas

  • Usuários
  • 206 posts
  • Sexo:Não informado
  • Localidade:Itacaré - Bahia
  • Interesses:Ajuda e Ajudar

Posted 17/07/2006, 02:12

Então vc tem razão, eu só responde assim mas ñ tinha certeza era só para ñ passar em branco eu as vezes ponho '..' e as vezes ñ para mim ñ faz diferença mesmo.

#7 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 17/07/2006, 07:30

^^' o problema esta no formulario.

olha o NAME dos campos!

todos estão assim:

<input name=name....

troque-os para o seus nomes corretos!

abaixo segue o formulario correto :
<?php
$busca="SELECT AccountID, Money, pw, LASTPW FROM warehouse WHERE AccountID = '{$_POST['nome']}'";
$resultado = mssql_query ($busca);
$informacoes= mssql_fetch_row($resultado);
$nome = $informacoes[0];
$Money = $informacoes[1];
$pw = $informacoes[2];
$LASTPW = $informacoes[3];

echo "<form name='form1' method='post' action='alterabau.php'>
<input type='hidden' name='nome' value='{$_POST['nome']}' />
<table width='300' border='0' cellspacing='0' cellpadding='0'>
<tr>
<td>{$_POST['nome']}</td>
</tr>
<tr>
<td><input name='Money' type=text value='$Money' id='Money' />
Dinheiro do Ba&uacute; </td>
</tr>
<tr>
<td><input name='pwd' type=text value='$pw' id='pw' />
Senha do Ba&uacute; </td>
</tr>
<tr>
<td><input name='LASTPW' type=text value='$LASTPW' id='LASTPW' />
Senha de prote&ccedil;&atilde;o </td>
</tr>
</table>
<p>
<input type='submit' name='Submit' value='Alterar' />&nbsp;
<input type='reset' name='Submit2' value='Desfazer' />
</p>
</form>
";
?>

qualquer dúvida e só perguntar,

T+
-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951

#8 Ronaldo

Ronaldo

    Mu X-Plosion - MUOnline Server

  • Usuários
  • 310 posts
  • Sexo:Não informado
  • Localidade:Nova Xavantina - MT

Posted 17/07/2006, 11:20

Incrivel essá é nova não sei por que não faz o update pois não vejo erro nenhum no cogodio e ele também não aparece nenhum erro, goku fiz como vc falou e dudu também fiz vejam

<?php

$busca="SELECT AccountID, Money, pw, LASTPW FROM warehouse WHERE AccountID = '{$_POST['nome']}'";
$resultado = mssql_query ($busca);
$informacoes= mssql_fetch_row($resultado);
$nome = $informacoes[0];
$Money = $informacoes[1];
$pw = $informacoes[2];
$LASTPW = $informacoes[3];

echo "<form name='form1' method='post' action='alterabau.php'><input type='hidden' name='nome' value='{$_POST['nome']}' />
<table width='300' border='0' cellspacing='0' cellpadding='0'><tr><td>{$_POST['nome']}</td></tr><tr><td>
<input name='Money' type=text value='$Money' id='Money' />Dinheiro do Ba&uacute; </td></tr><tr><td>
<input name='pwd' type=text value='$pw' id='pw' />Senha do Ba&uacute; </td></tr><tr><td>
<input name='LASTPW' type=text value='$LASTPW' id='LASTPW' />Senha de prote&ccedil;&atilde;o </td></tr></table><p>
<input type='submit' name='Submit' value='Alterar' />&nbsp;
<input type='reset' name='Submit2' value='Desfazer' /></p></form>";?>

<?
$nome = $_POST['AccountID'];
$Money = $_POST['Money'];
$pw = $_POST['pw'];
$LASTPW = $_POST['LASTPW'];

$update = "UPDATE dbo.warehouse SET Money='$Money', pw='$pw', LASTPW='$LASTPW' WHERE AccountID = '$nome'";
$resultado = mssql_query("$update");
if($resultado) {echo "Alterações feitas.";}
else{echo "Não foi possível fazer as alterações.";}

?>

mesmo assim não aparece nenhuma mensagem de erro, e não faz o update :unsure:

Edição feita por: Ronaldo, 17/07/2006, 11:21.

Mu X-Plosion - Qualidade em primeiro lugar!
Mu X-Plosion - MuOnline como você nunca viu antes!
Mu X-Plosion - O Melhor MU que você já viu!
Mu X-Plosion - Por que não basta ser o melhor tem que oferecer o melhor e a maior qualidade!

#9 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 17/07/2006, 11:43

<?$nome = $_POST['AccountID'];$Money = $_POST['Money'];$pw = $_POST['pw'];$LASTPW = $_POST['LASTPW'];$update = "UPDATE dbo.warehouse SET Money='$Money', pw='$pw', LASTPW='$LASTPW' WHERE AccountID = '$nome'";$resultado = mssql_query("$update");if($resultado) {echo "Alterações feitas.";}else{echo "Não foi possível fazer as alterações.";}?>

da um ECHO nas seguintes VARIAVEIS antes da função MSSQL_QUERY();

echo "{$resultado} <br />";
echo $nome;
exit;

verifica se está exibindo TUDO CORRETAMENTE!

T+
-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951

#10 Ronaldo

Ronaldo

    Mu X-Plosion - MUOnline Server

  • Usuários
  • 310 posts
  • Sexo:Não informado
  • Localidade:Nova Xavantina - MT

Posted 17/07/2006, 11:52

se diz colocar assim

$update = "UPDATE dbo.warehouse SET Money='$Money', pw='$pw', LASTPW='$LASTPW' WHERE AccountID = '$nome'";
echo "{$resultado} <br />";
echo $nome;
exit;
$resultado = mssql_query("$update");
if($resultado) {echo "Alterações feitas.";}
else{echo "Não foi possível fazer as alterações.";}

ai não aparece nada :wacko:
Mu X-Plosion - Qualidade em primeiro lugar!
Mu X-Plosion - MuOnline como você nunca viu antes!
Mu X-Plosion - O Melhor MU que você já viu!
Mu X-Plosion - Por que não basta ser o melhor tem que oferecer o melhor e a maior qualidade!

#11 aimola

aimola

    Webdeveloper

  • Usuários
  • 471 posts
  • Sexo:Masculino
  • Localidade:Sampa

Posted 17/07/2006, 12:21

Já experimentou dar um 'echo' no comando SQL e executá-lo diretamente no SqlServer? é uma maneira de debugar o erro no banco e tb de verificar se os parametros estão sendo passados corretamente.

[]'!
Que os passos de hoje sejam maiores que os de ontem
e que os passos de amanhã sejam mais largos que os de hoje.

#12 Ronaldo

Ronaldo

    Mu X-Plosion - MUOnline Server

  • Usuários
  • 310 posts
  • Sexo:Não informado
  • Localidade:Nova Xavantina - MT

Posted 18/07/2006, 01:11

depois de muito trabalho fiz isso e deu certo

$nome = ($_POST['nome']);
if (!$nome) { die(); }
$Money = $_POST['Money'];
$pw = $_POST['pw'];
$LASTPW = $_POST['LASTPW'];

alguém sabe me dizer o significado das duas primeiras linhas?

Edição feita por: Ronaldo, 18/07/2006, 01:15.

Mu X-Plosion - Qualidade em primeiro lugar!
Mu X-Plosion - MuOnline como você nunca viu antes!
Mu X-Plosion - O Melhor MU que você já viu!
Mu X-Plosion - Por que não basta ser o melhor tem que oferecer o melhor e a maior qualidade!

#13 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 18/07/2006, 07:31

Ronaldo, você deu um ECHO na váriavel $resultado ?
Se sim, o que exibiu no navegador ?
outra coisa, me parece que não está RETORNANDO nada na variavel $nome,
da um ECHO no $_POST['nome'] para ver se está mesmo retornando algum VALOR!

T+

Edição feita por: Goku Jr, 18/07/2006, 07:32.

-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951

#14 Ronaldo

Ronaldo

    Mu X-Plosion - MUOnline Server

  • Usuários
  • 310 posts
  • Sexo:Não informado
  • Localidade:Nova Xavantina - MT

Posted 18/07/2006, 14:15

goku agora a esta tudo certo mais eu gostaria de saber o que significa isso

$nome = ($_POST['nome']);if (!$nome) { die(); }

visto que coloquei isso no script e pronto agora fazo update certinho, mais não entendi o por que dessa função?
Mu X-Plosion - Qualidade em primeiro lugar!
Mu X-Plosion - MuOnline como você nunca viu antes!
Mu X-Plosion - O Melhor MU que você já viu!
Mu X-Plosion - Por que não basta ser o melhor tem que oferecer o melhor e a maior qualidade!

#15 gennf

gennf

    A Solução está ai...

  • Usuários
  • 645 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG

Posted 19/07/2006, 07:53

Se a variável $name não existir para a execução do arquivo.

Té mais ;)
Portal BatePapoBrasil
URL: www.batepapobrasil.com

----------------------------
Site desenvolvidos
URL:
VitrineABC :: Alugue Litoral :: OrtodontiaLago




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq