Good 4 Denunciar post Postado Março 29, 2010 Eu to fazendo um jogo, ae tem umas tatuagens e tal.. mas tem um problema numa query: if($tatuagens[0] == 0){ $duracao = "duracao = '15'"; } else { $duracao = "duracao = duracao + 15"; } mysql_query("UPDATE tatuagens SET ".$duracao.", datainicio = '".date("Y-m-d")."' WHERE uid = '".$myid."' LIMIT 1") or die(mysql_error()); Fiz até uma verificação pra ver se a coluna duracao estava com valor 0, beleza.. dei um echo na query: "UPDATE tatuagens SET duracao = '15', datainicio = '2010-03-28' WHERE uid = '1' LIMIT 1" E fui verificar no banco de dados, este valor estava 30.. Pq está multiplicando? Olha como está a tabela: CREATE TABLE `tatuagens` ( `id` int(255) NOT NULL auto_increment, `uid` int(100) NOT NULL default '0', `datainicio` date, `duracao` int(100) NOT NULL default '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1; OBS.: Estou usando PHP+MySQL! Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Março 29, 2010 pq você rodou a consulta duas vezes? Compartilhar este post Link para o post Compartilhar em outros sites
Good 4 Denunciar post Postado Março 29, 2010 E quem disse que rodei a consulta duas vezes? Eu apenas dei um echo pra ver como estava saindo a query, pra eu ver se tava duplicando.. if($tatuagens[0] == 0){ $duracao = "duracao = '0'"; } else { $duracao = "duracao = duracao + 15"; } echo "UPDATE tatuagens SET ".$duracao.", datainicio = '".date("Y-m-d")."' WHERE uid = '".$myid."' LIMIT 1"; mysql_query("UPDATE tatuagens SET ".$duracao.", datainicio = '".date("Y-m-d")."' WHERE uid = '".$myid."' LIMIT 1") or die(mysql_error()); Rodei o que saiu no echo no phpmyadmin e foi beleza.. não multiplicou nada.. só tem esta query que modifica a duração.. Compartilhar este post Link para o post Compartilhar em outros sites
Good 4 Denunciar post Postado Março 29, 2010 Ôpa!! Parou de dar esse problema.. quando liguei o pc e fui tentar novamente parou de fazer isso.. Oo Compartilhar este post Link para o post Compartilhar em outros sites
h4v3st 1 Denunciar post Postado Março 30, 2010 Good, se no seu banco é inteiro porque voce trabalha com string na aplicação? $duracao = "duracao = '15'"; $duracao = "duracao = duracao + 15"; Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Março 31, 2010 ele programou errado com certeza... Compartilhar este post Link para o post Compartilhar em outros sites
Good 4 Denunciar post Postado Abril 1, 2010 Vcs leram isso?: Fiz até uma verificação pra ver se a coluna duracao estava com valor 0, beleza.. E não programei errado não, pq eu só fiz desligar o pc e no outro dia começou a dar certo.. e eu nem tinha mexido em nada além disso.. Compartilhar este post Link para o post Compartilhar em outros sites