EBumba 0 Denunciar post Postado Julho 16, 2010 Ola Galera estou arrazado tenho aqui o codigo que esta a me dar bronca, é o seguinte quando faço a seleção de varios produtos ele faz o select o Update e envia pra outra tabela, quando se trata de um só produto ele faz o select não faz o Update e envia o produto para outra tabela . Gostaria que me ajudassem para saber aonde está o erro no código <?php require_once('../Connections/conecta.php'); ?> <?php // Verifica se algum carro foi selecionado if(isset($_POST["check"])) { // Faz um loop no Array de checkbox foreach($_POST["check"] as $key => $value){ $query_auto = "SELECT * FROM registros WHERE id ='$value'"; $consulta = "UPDATE registros SET status = 'TRANSFERIDO', datatranfer = NOW() WHERE status ='RESERVADO S .M.' and id ='$value'" ; $consulta1 = mysql_query($consulta); mysql_select_db($database_conecta, $conecta); $auto = mysql_query($query_auto, $conecta) or die(mysql_error()); $row_auto = mysql_fetch_array($auto); //joga os dados em um array $lote = $row_auto['lote']; $origem = $row_auto['origem']; $processo = $row_auto['n_processo']; $marca = $row_auto['marca']; $modelo = $row_auto['modelo']; $cor = $row_auto['cor']; $chassi = $row_auto['n_chassi']; $motor = $row_auto['n_motor']; $cx = $row_auto['tipoCx']; $cilindrada = $row_auto['cilindrada']; $pneu = $row_auto['refPneu']; $anofabrico = $row_auto['ano_fabrico']; $matricula = $row_auto['matricula']; $precoVenda = $row_auto['precoVenda']; //e então você insere na tabela $sql="INSERT INTO produtosstand(lote,origem,n_processo,data_envio,marca,modelo,cor,n_chassi,n_motor,tipoCx,cilindrada,refPneu,ano_fabrico,matricula,precoVenda,status) VALUES ('$lote','$origem','$processo',NOW(),'$marca','$modelo','$cor','$chassi','$motor','$cx','$cilindrada','$pneu','$anofabrico','$matricula','$precoVenda','TRANSFERIDO')"; $sql = mysql_query($sql) or die("Erro no SQL: ".mysql_error()); echo "O Produto selecionado foi Transferido para o Stand Maianga!<br />"; print "<script> alert('O Produto selecionado foi Transferido para o Stand Maianga!<br />'); location.href='enviarStandMaianga.php'; </script>"; }} else { echo "Nenhum Carro foi selecionado!"; } ?> Compartilhar este post Link para o post Compartilhar em outros sites
borsatti 2 Denunciar post Postado Julho 16, 2010 são 2 bancos diferentes? Compartilhar este post Link para o post Compartilhar em outros sites
EBumba 0 Denunciar post Postado Julho 16, 2010 são 2 bancos diferentes? são 2 bancos diferentes. Compartilhar este post Link para o post Compartilhar em outros sites
Periscuelo 20 Denunciar post Postado Julho 18, 2010 Amigo EBumba uma forma mais facil de você trabalhar caso sejam bancos diferentes porém no mesmo local (ou seja, 2 bancos utilizando o mesmo servidor MySQL) é ao invés de usar o mysql_select_db usar o nome do banco na sua query. Ex: SELECT * FROM banco1.registros WHERE id = '$value' INSERT INTO banco2.produtos (campo1,campo2,campo3) VALUES (1,2,3); Captou? Compartilhar este post Link para o post Compartilhar em outros sites
EBumba 0 Denunciar post Postado Julho 19, 2010 Obrigado Periscuelo o problema esta no Update do banco1.registro depois de ele fazer o INSERT INTO banco2.produtos... Compartilhar este post Link para o post Compartilhar em outros sites
Periscuelo 20 Denunciar post Postado Julho 20, 2010 A forma mais fácil amigo EBumba de você visualizar o problema do teu UPDATE é debugando a query. Faça o teste com update de um só produto e ao invés de fazer mysql_query faça um echo $consulta. A mesma coisa serve para a query de SELECT. Se a query estiver escrita corretamente verifique se os dados encontram-se nas condições exigidas da query para que seja executada e experimente executar a query no phpmyadmin pra ver se funciona. Se tudo funcionar debug seu looping, experimente fazer o update de um produto fora do mesmo e ver se vai. O jeito é debugar meu amigo. :joia: Compartilhar este post Link para o post Compartilhar em outros sites
EBumba 0 Denunciar post Postado Julho 20, 2010 Muito obrigado pela dica galera tentei fazer a mudança de linha nos códigos e funcionou mesmo com um produto selecionado obrigado o código esta ai quem quiser fazer o uso e melhorar esta bem <?php require_once('../Connections/conecta.php'); ?> <?php // Verifica se algum carro foi selecionado if(isset($_POST["check"])) { // Faz um loop no Array de checkbox foreach($_POST["check"] as $key => $value){ $query_auto = "SELECT * FROM registros WHERE id ='$value'"; //fiz a mudança do update que estava aqui mysql_select_db($database_conecta, $conecta); $auto = mysql_query($query_auto, $conecta) or die(mysql_error()); $row_auto = mysql_fetch_array($auto); //joga os dados em um array $lote = $row_auto['lote']; $origem = $row_auto['origem']; $processo = $row_auto['n_processo']; $marca = $row_auto['marca']; $modelo = $row_auto['modelo']; $cor = $row_auto['cor']; $chassi = $row_auto['n_chassi']; $motor = $row_auto['n_motor']; $cx = $row_auto['tipoCx']; $cilindrada = $row_auto['cilindrada']; $pneu = $row_auto['refPneu']; $anofabrico = $row_auto['ano_fabrico']; $matricula = $row_auto['matricula']; $precoVenda = $row_auto['precoVenda']; //e então você insere na tabela $sql="INSERT INTO produtosstand(lote,origem,n_processo,data_envio,marca,modelo,cor,n_chassi,n_motor,tipoCx,cilindrada,refPneu,ano_fabrico,matricula,precoVenda,status) VALUES ('$lote','$origem','$processo',NOW(),'$marca','$modelo','$cor','$chassi','$motor','$cx','$cilindrada','$pneu','$anofabrico','$matricula','$precoVenda','TRANSFERIDO')"; $sql = mysql_query($sql) or die("Erro no SQL: ".mysql_error()); //Coloquei aqui e funcionou bem $consulta = "UPDATE registros SET status = 'TRANSFERIDO', datatranfer = NOW() WHERE status ='RESERVADO S .M.' and id ='$value'" ; $consulta1 = mysql_query($consulta); echo "O Produto selecionado foi Transferido para o Stand Maianga!<br />"; print "<script> alert('O Produto selecionado foi Transferido para o Stand Maianga!<br />'); location.href='enviarStandMaianga.php'; </script>"; }} else { echo "Nenhum Carro foi selecionado!"; } ?> Compartilhar este post Link para o post Compartilhar em outros sites