Carcleo 4 Denunciar post Postado Janeiro 25, 2010 Ola pessoal, estou precisando de uma orientação. No site do meu cliente www.naturelavie.com.br, tem uma lojinha virtual. Coisa simples mesmo. Agora o cliente me pediu para colar cobrança por cartão, boleto, deposito. Calculo de frete e muito mais. Bom, agora estou na seguinte parte. Gravei o pedido do internauta no mysql assim: for($i=0;$i<$MeuCarrinho->QuantosItens();$i++) { $data = date('Y-m-d'); $MySQL->query("INSERT INTO pedidos (ID_PEDIDO, ID_PRODUTO, QUANTIDADE,Envio, data, atende) VALUES (". $CODIGO_PEDIDO .",". $MeuCarrinho->item_codigo[$i] .",". $MeuCarrinho->item_quantidade[$i] .",'". $HTTP_POST_VARS["TENVIO"] ."','$data','n')"); } Bom, isso gera na minha tabela (com id autoincrement) um numero de pedido. Preciso saber qual foi esse numero de pedido pois quando for enviar os dados para administradora de cartões será preciso informar o numero do pedido. Como faço para, dentro da mesma seçao, recuperar o numero do pedido Compartilhar este post Link para o post Compartilhar em outros sites
Anderson Ferminiano 2 Denunciar post Postado Janeiro 25, 2010 $MySQL->insert_id; Compartilhar este post Link para o post Compartilhar em outros sites
Carcleo 4 Denunciar post Postado Janeiro 25, 2010 Ok no caso ficaria assim: for($i=0;$i<$MeuCarrinho->QuantosItens();$i++) { $data = date('Y-m-d'); $MySQL->query("INSERT INTO pedidos (ID_PEDIDO, ID_PRODUTO, QUANTIDADE,Envio, data, atende) VALUES (". $CODIGO_PEDIDO .",". $MeuCarrinho->item_codigo[$i] .",". $MeuCarrinho->item_quantidade[$i] .",'". $HTTP_POST_VARS["TENVIO"] ."','$data','n')"); $ultimo_id=mysql_insert_id(); } isso! Agora, e pra pegar esse valor mais pra frente sendo que (eu acho) não esta na mesma sessão Como fazer Compartilhar este post Link para o post Compartilhar em outros sites
Anderson Ferminiano 2 Denunciar post Postado Janeiro 25, 2010 você pode guardá-lo na sessão com $_SESSION em um array para usar posteriormente http://br.php.net/session_start Compartilhar este post Link para o post Compartilhar em outros sites
Carcleo 4 Denunciar post Postado Janeiro 25, 2010 Cara, fiz assim e retornou 0 (zero) como valor. for($i=0;$i<$MeuCarrinho->QuantosItens();$i++) { $data = date('Y-m-d'); $MySQL->query("INSERT INTO pedidos (ID_PEDIDO, ID_PRODUTO, QUANTIDADE,Envio, data, atende) VALUES (". $CODIGO_PEDIDO .",". $MeuCarrinho->item_codigo[$i] .",". $MeuCarrinho->item_quantidade[$i] .",'". $HTTP_POST_VARS["TENVIO"] ."','$data','n')"); $MeuCarrinho->ultimo_id =mysql_insert_id(); } Onde estou errando Compartilhar este post Link para o post Compartilhar em outros sites
Carcleo 4 Denunciar post Postado Janeiro 25, 2010 Só uma falta de atenção minha: O campo NÃO é auto incremente. Nesse caso, como fazer pra retrornar o valor gravado de um determinado campo para aquela gravação. Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Janeiro 25, 2010 Você terá de fazer um novo SELECT. Mas a melhor saída é reestruturar seu banco de dados, inserindo o campo auto_increment. Compartilhar este post Link para o post Compartilhar em outros sites