Ir para conteúdo

POWERED BY:

Arquivado

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

renatoraioz

mudar campo no bd

Recommended Posts

olá pessoal... no codigo abaixo, tento mudar o campo "creditos" da tabela "dominios", sendo que na tabela dominio há varios registros.... se ele tem 1 credito, eu mudo para 0, se tem 2, mudo para 1 e assim por diante... bom, o sistema nao acusa nenhum erro, mas tmb nao muda os creditos.. em alguns testes ele mudou apenas quem tinha 1 credito.. mas se tem 2, deveria ir para 1 e permanece em 2..alguem pode me dizer onde errei???<?include"config.php";$acao=mysql_query("select * from dominios");while($r=mysql_fetch_array($acao)) {$creditos=$r['creditos']; }// FUNÇÃO DESCONTAR CREDITOSif ($creditos == '1') {$ac=mysql_query("update dominios setcreditos= '0'") or die (mysql_error());mysql_close(); } elseif ($creditos == '2' ) {$ac=mysql_query("update dominios setcreditos= '1'") or die (mysql_error());mysql_close(); }elseif ($creditos == '3' ) {$ac=mysql_query("update dominios setcreditos= '2'") or die (mysql_error());mysql_close(); }elseif ($creditos == '4' ) {$ac=mysql_query("update dominios setcreditos= '3'") or die (mysql_error());mysql_close(); }elseif ($creditos == '5' ) {$ac=mysql_query("update dominios setcreditos= '4'") or die (mysql_error());mysql_close(); }elseif ($creditos == '6' ) {$ac=mysql_query("update dominios setcreditos= '5'") or die (mysql_error());mysql_close(); }elseif ($creditos == '7' ) {$ac=mysql_query("update dominios setcreditos= '6'") or die (mysql_error());mysql_close(); }elseif ($creditos == '8' ) {$ac=mysql_query("update dominios setcreditos= '7'") or die (mysql_error());mysql_close(); }elseif ($creditos == '9' ) {$ac=mysql_query("update dominios setcreditos= '8'") or die (mysql_error());mysql_close(); }elseif ($creditos == '10' ) {$ac=mysql_query("update dominios setcreditos= '9'") or die (mysql_error());mysql_close(); }elseif ($creditos == '11' ) {$ac=mysql_query("update dominios setcreditos= '10'") or die (mysql_error());mysql_close(); }elseif ($creditos == '12' ) {$ac=mysql_query("update dominios setcreditos= '11'") or die (mysql_error());mysql_close(); } echo"<script language=javascript>alert('Créditos Processados com Sucesso!')</script>";echo"<script language=javascript>location.href='listar_dominio.php'</script>";?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, pra que tanto elseif's?

 

Porque não subtrai? Fica muito mais fácil...

 

Veja se isto da certo:

 

PHP [/tr][tr]<?

 

include"config.php";

 

$acao=mysql_query("select * from dominios");

while($r=mysql_fetch_array($acao)) {

 

$creditos=$r['creditos'];

$novo_credito = $creditos -1;

mysql_query("update dominios set

creditos= '$novo_credito'"

);

 

}

 

echo"<script language=javascript>alert('Créditos Processados com Sucesso!')</script>";

echo"<script language=javascript>location.href='listar_dominio.php'</script>";

 

?>

[/tr]

 

[]'s :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

fala the blk... cara, tanto elseif é pq sou leigaço... vou tudo na base do "vamo ve q da certo" hehehe... meu velho, diz uma coisa, e quando o credito ja for 0 (zero), como eu faço????? pois nao queria q ele ficasse -1 no bd e tal...

Compartilhar este post


Link para o post
Compartilhar em outros sites

the blk... seguinte, o codigo até funcionou, mas ele vai diminuindo 1 sempre... tipo assim, eu tenho um dominio com 1 credito... dae ele ficou -1 de cara.. depois -2, -3... se eu alterar o credito, pelo sistema, para 5 por exemplo, ele deixará -4...ou seja... se ele já deixou -1, mesmo que eu altere, e eu terei que fazer isso todo mes, qdo eu diminuir creditos, ele deixará -2, mesmo que eu tenha alterado entende para 10...pq isso neh, você tem alguma ideia?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O segundo post não entendi nada, se puder explicar melhor!

 

O primeiro tenta assim:

 

PHP [/tr][tr]<?

 

include"config.php";

 

$acao=mysql_query("select * from dominios");

while($r=mysql_fetch_array($acao)) {

 

$creditos=$r['creditos'];

 

if($creditos == "0"){

echo"Ñúmero 0 não pode ser alterado.";

}

else{

$novo_credito = $creditos -1;

mysql_query("update dominios set

creditos= '$novo_credito'"

);

 

}

}

 

echo"<script language=javascript>alert('Créditos Processados com Sucesso!')</script>";

echo"<script language=javascript>location.href='listar_dominio.php'</script>";

 

?>

[/tr]

 

Acho que entendeu né? :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom eu tive que fazer um UPDATE parecido, onde diminuia -1 do valor do campo.

 

Então se o seu problema é esse basta apenas diminuir o valor direto no UPDATE, assim:

 

PHP [/tr][tr]

$sql = "UPDATE dominios SET creditos = creditos -1";

[/tr]

 

Para mim funcionou !

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.