Ir para conteúdo

POWERED BY:

Arquivado

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

Danv

[Resolvido] quero pegar o ultimo ID

Recommended Posts

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

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

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.