Danv 0 Denunciar post Postado Outubro 3, 2003 Ola pessoal, meu Deus... estou quebrando a cabeça aqui mas não tem jeito.... espero que possam me ajudar... O problema é o seguinte, estou fazendo um cadastro de usuarios, em DUAS PARTES... cadastro_p1.php - Cadastra algumas informações do usuario... (abaixo há parte do codigo) e depois do cadastro vai para a pagina "cadastro_p2.php", o problema é que eu quero carregar via POST o ID deste usuario cadastrado, ficando o endereço para redirecionar para o "Passo 2 do Cadastro" assim: cadastro_p2.php?id=(o id deste usuario que acabou de ser cadastrado), então fiz o seguinte, quando é dado o "submit" no formulario de cadastro 1 a pagina grava os dados deste novo usuario e em seguida faz um Recort Set da tabela para pegar o id deste usuario. Mas como pegar o id deste usuario??? Eu havia colocado a variavel [$totalRows_rsUsuarios] como vocês podem ver abaixo, mas quando excluir um usuario não da mais certo porque o numero de linhas da tabela não vai ser o mesmo do ID do ultimo usuario. segue abaixo esta parte do codigo... ... $insertSQL = sprintf("INSERT INTO usuarios (dreg,nome,ano,dnasc,dadmi,sexo) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)", GetSQLValueString(fDataDB($_POST['dreg']), "date"), GetSQLValueString($_POST['nome'], "text"), GetSQLValueString($_POST['ano'], "text"), GetSQLValueString(fDataDB($_POST['dnasc']), "date"), GetSQLValueString(fDataDB($_POST['dadmi']), "date"), GetSQLValueString($_POST['sexo'], "text")); mysql_select_db($database_conn, $conn); $Result1 = mysql_query($insertSQL, $conn) or die(mysql_error());// RS Usuarios mysql_select_db($database_conn, $conn); $query_rsUsuarios = "SELECT * FROM usuarios"; $rsUsuarios = mysql_query($query_rsUsuarios, $conn) or die(mysql_error()); $row_rsUsuarios = mysql_fetch_assoc($rsUsuarios); $totalRows_rsUsuarios = mysql_num_rows($rsUsuarios); $insertGoTo = "cadastro_p2.php?idf=".$totalRows_rsUsuarios.""; if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo));}Para melhor visualização, aqui esta este erro: $insertGoTo = "cadastro_p2.php?idf=".$totalRows_rsUsuarios.""; Alguem saberia me diser como fazer isto? Selecionar o ID do ultimo usuario cadastrado (no caso seria o usuario cadastrado na parte 1 do processo) Preciso pegar este id para pegar as informações cadastradas na parte 1 e exibi-las na parte 2 do cadastro. Espero que alguem possa me ajudar. Bom, agradeço antecipadamente. Valeu pessoal. []'s Compartilhar este post Link para o post Compartilhar em outros sites
Danv 0 Denunciar post Postado Outubro 3, 2003 parece que consegui, mas se alguem souber uma maneira diferente de fazer..., gostaria muito de saber :lol: .... veja, foi realizado um do while no valor da variavel $insertGoTo ... segue o codigo... Grava dados e......$maxRows_rsUsuario = 1;$pageNum_rsUsuario = 0;if (isset($HTTP_GET_VARS['pageNum_rsUsuario'])) { $pageNum_rsUsuario = $HTTP_GET_VARS['pageNum_rsUsuario'];}$startRow_rsUsuario = $pageNum_rsUsuario * $maxRows_rsUsuario;mysql_select_db($database_conn, $conn);$query_rsUsuario = "SELECT * FROM usuarios ORDER BY id DESC";$query_limit_rsUsuario = sprintf("%s LIMIT %d, %d", $query_rsUsuario, $startRow_rsUsuario, $maxRows_rsUsuario);$rsUsuario = mysql_query($query_limit_rsUsuario, $conn) or die(mysql_error());$row_rsUsuario = mysql_fetch_assoc($rsUsuario);if (isset($HTTP_GET_VARS['totalRows_rsUsuario'])) { $totalRows_rsUsuario = $HTTP_GET_VARS['totalRows_rsUsuario'];} else { $all_rsUsuario = mysql_query($query_rsUsuario); $totalRows_rsUsuario = mysql_num_rows($all_rsUsuario);}$totalPages_rsUsuario = ceil($totalRows_rsUsuario/$maxRows_rsUsuario)-1;do { $insertGoTo = "cadastro_p2.php?id=".$row_rsUsuario['id'].""; } while ($row_rsUsuario = mysql_fetch_assoc($rsUsuario)); if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo));} Para um melhor visualização: do { $insertGoTo = "cadastro_p2.php?id=".$row_rsUsuario['id'].""; } while ($row_rsUsuario = mysql_fetch_assoc($rsUsuario)); Bom, não sei se é a melhor opção, mas esta dando certo... Valeu pessoal, []'s Compartilhar este post Link para o post Compartilhar em outros sites
Lucas Moreira 0 Denunciar post Postado Junho 26, 2010 Bom... o tópico é antigo demais, mas fica a dica: A função mysql_insert_id() exibe o último id inserido. http://forum.imasters.com.br/public/style_emoticons/default/clap.gif Compartilhar este post Link para o post Compartilhar em outros sites