Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) HELP para Gerador de NUMEROS


Denis Sousa

Pergunta

Boa noite !

Não sou um programador nato, mais sou um cara que ama esse lance de programação!

to precisando de um codigo que gere um numero pra mim, vou explicar melhor!!!

Num pagina de um sistema tem um campo pra numero da observação, esse campo é chave primária e não recebe o mesmo valor 2 vezez, por isso

estou precisando muito de um codigo, onde eu coloque na pagina por exemplo " O proximo numero é: 12 (EXEMPLO)"... na proxima vez que a pagina for aberta tera que aparecer, "o proximo numero é: 13" e assim em diante.... é so pra não perder o controle da numeração e não ter o perigo da pessoa repetir um numero já usado e na hora de salvar da Erro de duplicidade...

AMIGOSSSSSSSSSS ajudem, porque não sei o que fazer!!!!

Valeuuuuuu a todoss !

Editado por Denis Sousa
Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0
você já conseguiu fazer alguma coisa? tipo um meio caminho andado?

ou um código que grave o numero mas que duplique.... se conseguiu posta ae pra gente tentar ajudar em cima dele...

codigo da pagina de administraçãoa e:

<?php
session_start();
?>
<?php
if(isset($_SESSION['nome'])){
$usuario = $_SESSION['nome'];
}
else{
echo '&lt;script>';
echo 'alert("ACESSO RESTRITO!");';
echo 'window.location.href="index.php";';
echo '</script>';
}

include "mysql.php";

$strAcao = $_POST["hddAcao"];
$strID = $_POST["hddMatricula"];
$strMatricula = $_POST["txtMatricula"];
$strNome = $_POST["txtNome"];
$strAdv = $_POST["txtAdv"];
$strTelefone = $_POST["txtTelefone"];

if($strAcao == "salvar"){
if($strID == ""){
$insert = "insert into aluno (matricula, nome, adv, telefone) values ('$strMatricula','$strNome', '$strAdv', '$strTelefone')";
mysql_query($insert,$cnn) or die (mysql_error());
?>
&lt;script>
alert("ALUNO E ADVERTÊNCIA SALVOS!");
window.location.href="admin.php";
</script>
<?
}
else{
// $delete = "delete from aluno where matricula='$strID'";
// mysql_query($delete,$cnn);
//
// $insert = "insert into aluno (matricula, nome, telefone) values ('$strMatricula','$strNome','$strTelefone')";
// mysql_query($insert,$cnn) or die (mysql_error());

$update = "update aluno set nome='$strNome', adv='$strAdv', telefone='$strTelefone' where matricula='$strID'";
mysql_query($update,$cnn);

?>
&lt;script>
alert("ALUNO EDITADO!");
window.location.href="admin.php";
</script>
<?
}
}
if($strAcao == "editar"){
$sql_update = "select * from aluno where matricula='$strID'";
$rs_update = mysql_query($sql_update,$cnn);
$num = mysql_num_rows($rs_update);
if(!$num == 0){
for($i=0; $i < $num; $i++){
$edit_matricula = mysql_result($rs_update, $i, "matricula");
$edit_nome = mysql_result($rs_update, $i, "nome");
$edit_adv = mysql_result($rs_update, $i, "adv");
$edit_telefone = mysql_result($rs_update, $i, "telefone");
}
}
}

if($strAcao == "excluir"){
$delete = "delete from aluno where matricula='$strID'";
mysql_query($delete,$cnn);
?>
&lt;script>
alert("ALUNO EXCLUÍDO!");
window.location.href="admin.php";
</script>
<?
mysql_close($cnn);
}
?>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>.:: CEF 20 ::. .:: P&aacute;gina de Administra&ccedil;&atilde;o do Sistema ::.</title>
<link rel="stylesheet" type="text/css" href="comum.css">
&lt;script>
function fncSalvar(){
if(frm.txtMatricula.value==""){
alert("Por favor, informe o número de controle!")
frm.txtMatricula.focus()
return;
}
if(frm.txtNome.value==""){
alert("Por favor, informe o nome do aluno!")
frm.txtNome.focus()
return;
}
if(frm.txtAdv.value==""){
alert("Por favor, informe a advertência do aluno!")
frm.txtAdv.focus()
return;
}
frm.hddAcao.value="salvar";
frm.submit();
}

function fncEditar(){
if(frm.listaAluno.value==""){
alert("Por favor, selecione o aluno para editar!");
frm.listaAluno.focus()
return
}
frm.hddMatricula.value = frm.listaAluno.value;
frm.hddAcao.value = "editar";
frm.submit();
}

function fncExcluir(){
if(frm.listaAluno.value==""){
alert("Por favor, selecione um ítem do menu para exclusão!");
frm.listaAluno.focus()
return
}
if(confirm("CONFIRME A EXCLUSÃO!")){
frm.hddMatricula.value = frm.listaAluno.value;
frm.hddAcao.value = "excluir"
frm.submit();
}
}

</script>
</head>
<body>
<form name="frm" method="post">
<table width="760" border="0" align="center">
<tr>
<td height="144" align="left" class="fontSize24"><strong>LISTA DE ALUNO
/ OBSERVA&Ccedil;&Otilde;ES</strong><BR>
<select name="listaAluno" size="10" class="inputTEXT" style="width:100%;">
<?php
if($edit_matricula == ""){
$rs = mysql_query("select * from aluno order by nome");
$num = mysql_num_rows($rs);
if(!$num == 0){
for($i=0; $i < $num; $i++){
print "<option value=". mysql_result($rs, $i, "matricula") .">". mysql_result($rs, $i, "nome")."</option>\n";
}
}else{
print "<option>Sem alunos!";
}
}
else{
print "<option selected>EDITANDO: [". $edit_nome ."]";
}
?>
</select>[/codebox]

o que quero e gerar um codigo, para dentro de matricula que é chave primária, gere um numero a cada vez que forem salvos os dados...

Valeu !

Editado por fercosmig
Adicionar tag's
Link para o comentário
Compartilhar em outros sites

  • 0

a solução pode ser feita em php mesmo...

antes de adicionar o id da matricula você verifica se ele já existe na tabela, se não, adiciona normal, se sim, você incrementa em 1 esse id até que ele chegue em um que não exista... nesse caso o id não é adicionado manualmente, como em campos autoincrement....

ou

eu n sei como ta a situação do seu banco, mas pelo que pude ver, você n tem uma coluna com os ids, essa coluna pode ser do tipo autoincrement (soluciona pelo mysql mesmo), dessa forma, sempre que uma matricula nova for adiconada no banco ele irá incrementar automaticamente esse campo id, com um valor diferente todas as vezes...

entendeu ? se não, posta ae

Link para o comentário
Compartilhar em outros sites

  • 0
a solução pode ser feita em php mesmo...

antes de adicionar o id da matricula você verifica se ele já existe na tabela, se não, adiciona normal, se sim, você incrementa em 1 esse id até que ele chegue em um que não exista... nesse caso o id não é adicionado manualmente, como em campos autoincrement....

ou

eu n sei como ta a situação do seu banco, mas pelo que pude ver, você n tem uma coluna com os ids, essa coluna pode ser do tipo autoincrement (soluciona pelo mysql mesmo), dessa forma, sempre que uma matricula nova for adiconada no banco ele irá incrementar automaticamente esse campo id, com um valor diferente todas as vezes...

entendeu ? se não, posta ae

eu entendi +-.. tem como você postar um script pra eu ve como é direitinho..

valeu...!!!

Link para o comentário
Compartilhar em outros sites

  • 0

partindo do ponto que você já fez a conexão com o banco e já esta tudo configurado, esse é um exemplo que verifica se já existe um valor em uma tabela:

<?

        
       $campo = $_POST['campo']

    mysql_select_db('seu_banco') or die('Falha ao selecionar base de dados');
    
    $re = mysql_query("select count(*) as total from tabela1 where id = '$campo'");
    $total = mysql_result($re, 0, "total");
    
    if ($total == 0)
    { 
        $q_insere = "INSERT INTO tabela1 (id) VALUES ('$campo')";
        
        if (mysql_query($q_insere))
        {
            echo 'id inserido com sucesso';
        }
        else{
            echo 'falha ao inserir id';
        }
    }
    else{
     
     echo 'id já existe na tabela';
    }

?>

entendeu ? esse exemplo é pro caso do id ser inserido manualmente, mas ele só verifica se o id já existe....

ou você pode resolver diretamente no banco, criando uma coluna com o nome ID que seja auto increment, como eu já expliquei antes, sempre que uma matricula for adicionada no banco o valor do campo id será adicionado automaticamente, e sempre diferente... pelo que entendi, essa segunda alternativa é a mais apropriada para você...

Link para o comentário
Compartilhar em outros sites

  • 0
partindo do ponto que você já fez a conexão com o banco e já esta tudo configurado, esse é um exemplo que verifica se já existe um valor em uma tabela:

<?

        
       $campo = $_POST['campo']

    mysql_select_db('seu_banco') or die('Falha ao selecionar base de dados');
    
    $re = mysql_query("select count(*) as total from tabela1 where id = '$campo'");
    $total = mysql_result($re, 0, "total");
    
    if ($total == 0)
    { 
        $q_insere = "INSERT INTO tabela1 (id) VALUES ('$campo')";
        
        if (mysql_query($q_insere))
        {
            echo 'id inserido com sucesso';
        }
        else{
            echo 'falha ao inserir id';
        }
    }
    else{
     
     echo 'id já existe na tabela';
    }

?>

entendeu ? esse exemplo é pro caso do id ser inserido manualmente, mas ele só verifica se o id já existe....

ou você pode resolver diretamente no banco, criando uma coluna com o nome ID que seja auto increment, como eu já expliquei antes, sempre que uma matricula for adicionada no banco o valor do campo id será adicionado automaticamente, e sempre diferente... pelo que entendi, essa segunda alternativa é a mais apropriada para você...

OPA OPA OPAAAAAAAA...

resolvido o problema...

valeuuu a todos me deram uma forçinha ae.....

brigaduuuu !

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,7k
×
×
  • Criar Novo...