Ir para conteúdo

Arquivado

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

Fabyo

Sistema de Cadastro em PHP/MySQL

Recommended Posts

Eu quero agradecer a todos que gostaram do sistema e é por causa desse retorno que eu continuo sempre querendo ajudar e criar novos exemplos

 

valeu pontesh e @fabioagora e os demais usuarios, e realmente o topico é antigo, mas nao esta abandonado nem desatualizado, com duvidas, ideias e sujestões o sistema de exemplo vai ficando cada vez melhor e mais pratico, e o que é mais legal esta ajudando pessoas iniciantes a encontrarem o caminho da programação e conseguirem se virar.

 

e @fabioagora espero poder te ajudar nas suas duvidas

 

assim que possivel eu crio uma pagina com os dados cadastrados do jeito que você esta com duvida

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fábyo estou com uma dúvida de onde coloco a função $id.

 

 

gostaria de fazer um index.php assim:

 

 

se o login não existe

 

 

quadro login

quadro senha,

 

e logo abaixo, cadastre-se

 

se o login existe então

 

Bem vindo $usuário, e logo após, um sair (do jeito que está),

e logo abaixo um editar dados.

 

porém estou com um problema, não sei onde colocar a funão $id, para que o usuário faça a edição somente do seu cadastro.

 

 

eu tenho feito isso:

 

 

<?php

require_once "protecao.php";

 

if(file_exists("init.php")) {

require "init.php";

} else {

echo "Arquivo init.php nao foi encontrado";

exit;

}

 

if(!function_exists("Abre_Conexao")) {

echo "Erro o arquivo init.php foi auterado, nao existe a função Abre_Conexao";

exit;

}

 

Abre_Conexao();

$re = mysql_query("SELECT * FROM usuarios INNER JOIN estados ON usuarios.fk_estado = estados.id_estado ORDER BY usuarios.nome;");

if(mysql_errno() != 0) {

if(!isset($erros)) {

echo "Erro o arquivo init.php foi auterado, nao existe $erros";

exit;

}

echo $erros[mysql_errno()];

exit;

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-BR" lang="pt-BR">

<head>

<title>Sistema de Cadastro</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<meta http-equiv="Content-Language" content="pt-BR" />

<meta http-equiv="expires" content="Wed, 26 Feb 1997 08:21:57 GMT" />

<meta http-equiv="pragma" content="no-cache" />

<meta http-equiv="Cache-Control" content="no-cache" />

<meta http-equiv="author" content="Fabyo" />

<meta http-equiv="imagetoolbar" content="no" />

<meta http-equiv="Content-Encoding" content="gzip" />

</head>

<body>

<?php

if($dados != ''){

$nome = ucfirst(strtolower($dados['nome']));

 

echo "<h3>Seja bem-vindo! ($nome | <a href=\"logout.php\">Sair)</a></h3><hr/>";

 

if(isset($dados['nivel_acesso']) and $dados['nivel_acesso'] == 1 and $dados['id_usuario'] == $id){

echo "<td><a href=\"editar.php?id=$id\">[Editar]</a> <a href=\"excluir.php?id=$id\">[Excluir]</a></td>";

 

 

}}

?>

 

<?php

if($dados == ''){

echo "<form method=\"post\" action=\"logar.php\">

<label>Login: </label><br/><input name=\"login\"/><br/>

<label>Password</label><br/><input name=\"senha\" type=\"password\"/><br/>

<input type=\"submit\" name=\"sub\" value=\"Entrar\"/>

</form>";

}

?>

<ul>

<li><a href="cadastro.php">Cadastrar Usuarios</a></li>

<li><a href="listar.php">Listar Usuarios</a></li>

<li><a href="pesquisar.html">Pesquisar Usuarios</a></li>

</ul>

</body>

</html>

 

 

onde coloco a função $id?

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá pessoal, só para constar, consegui resolver meu problema, então o arquivo index.php ficou assim:

 

 

<?php

require_once "protecao.php";

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-BR" lang="pt-BR">

<head>

<title>Sistema de Cadastro</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<meta http-equiv="Content-Language" content="pt-BR" />

<meta http-equiv="expires" content="Wed, 26 Feb 1997 08:21:57 GMT" />

<meta http-equiv="pragma" content="no-cache" />

<meta http-equiv="Cache-Control" content="no-cache" />

<meta http-equiv="author" content="Fabyo" />

<meta http-equiv="imagetoolbar" content="no" />

<meta http-equiv="Content-Encoding" content="gzip" />

</head>

<body>

<?php

if($dados != ''){

$nome = ucfirst(strtolower($dados['nome']));

echo "<h3>Seja bem-vindo! ($nome | <a href=\"logout.php\">Sair)</a></h3><hr/>";

}

 

if(file_exists("init.php")) {

require "init.php";

} else {

echo "Arquivo init.php nao foi encontrado";

exit;

}

 

if(!function_exists("Abre_Conexao")) {

echo "Erro o arquivo init.php foi auterado, nao existe a função Abre_Conexao";

exit;

}

 

Abre_Conexao();

$re = mysql_query("SELECT * FROM usuarios INNER JOIN estados ON usuarios.fk_estado = estados.id_estado ORDER BY usuarios.nome;");

if(mysql_errno() != 0) {

if(!isset($erros)) {

echo "Erro o arquivo init.php foi auterado, nao existe $erros";

exit;

}

echo $erros[mysql_errno()];

exit;

}

 

while($l = mysql_fetch_array($re)) {

$id = $l["id_usuario"];

$nivel = $l["nivel_acesso"];

 

echo "<tr>";

if(isset($dados['nivel_acesso']) and $dados['nivel_acesso'] == 2){

echo "<td><a href=\"editar.php?id=$id\">[Editar]</a> </td>";

}

if(isset($dados['nivel_acesso']) and $dados['nivel_acesso'] == 1 and $dados['id_usuario'] == $id){

echo "<td><a href=\"editar.php?id=$id\">[Editar]</a> </td>";

}

 

}

@mysql_close();

 

if($dados == ''){

echo "<form method=\"post\" action=\"logar.php\">

<label>Login: </label><br/><input name=\"login\"/><br/>

<label>Password</label><br/><input name=\"senha\" type=\"password\"/><br/>

<input type=\"submit\" name=\"sub\" value=\"Entrar\"/>

</form>";

echo "\t<li><a href=\"cadastro.php\">registrar</a></li>";

}

?>

</ul>

</body>

</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma coisa que não sei como colocar!

Talvez alguem posso ajudar:

Como colocar uma opção de esquecia a senha, para envio de login e senha para e-mail cadastrado???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Fabyo, ola amigos e companheiros de estudo.

 

Recebi a seguinte mensagem:

 

Notice: Undefined variable: user_login in C:\wamp\www\Fabyo\localizar.php on line 3

Somente usuarios logados podem pesquisar.

 

O código do localizar.php começa assim:

 

<?php

require_once "protecao.php";

if($user_login == ''){

echo "Somente usuarios logados podem pesquisar<br />";

echo "<a href=\"index.php\">Voltar</a>";

exit;

}....

 

Como solucionar isso? Tem algo a ver com variáveis globais? Abraços a todos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fabyo e pessoal, estou precisando aprender sobre relacionamentos; tenho uma necessidade que se aplica.

 

Um controle de estoque:

 

Banco de dados X,

tabelas: peças, produtos, fornecedores, clientes, pedidos de clientes, pedidos a fornecedores, nota de compra, nota de venda, funcionários, ligação peça produto, registro de todas as ações no sistema.

 

Iniciarei com LOGIN.

 

O Admin tem todo o controle do sistema.

 

O Usuário Alfa pode incluir e alterar informações relativas ao Estoque, mas não pode ter controle sobre os usuários.

 

O Usuário Comum pode pesquisar e visualizar informações relativas ao Estoque.

 

Vamos fazer este sistema por partes, pessoal, se alguém tiver experiência e quiser me aconselhar, eu ficarei muito agradecido. Em japonês ficaria "arigatai".

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pontesh,

 

um sistema nesse nível é algo bem mais complexo.

 

exige documentação concisa também.

 

porém, não é nada que seja impossível, desde que haja uma equipe comprometida no desenvolvimento.

 

o comprometimento é a parte vital desse tipo de desenvolvimento (open source)

 

há outros fatores também muito importantes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Hinon, você esta no Japão também?

 

Vamos trabalhar neste sistema e deixarmos o código aberto, servirá para mim aprender e para uma galera que virá depois de mim.

 

Hinon, quando aceitei o desafio de aprender PHP para desenvolver este sistema de estoque, eu não imaginava que iria encontrar pessoas para me ajudar, mas fiquei muito surpreso com o código do Fabyo e agora com a sua resposta e muitos outros que estão acessando este fórum e que poderão se identificar como uma equipe no desenvolvimento deste sistema.

 

Queria pedir licença para o Fabyo e para toda a equipe do imasters e convidar todos para participarem do time.

 

Se você sabe muito compartilhe conosco que queremos aprender.

 

Você que quer aprender venha participar, todos cresceremos um pouco mais.

 

Heber J. Grant foi um exemplo de persistência e determinação. Ele viveu com este lema: "Aquilo que persistimos em fazer torna-se mais fácil, não porque a natureza da coisa mude, mas porque nossa capacidade de executá-la aumenta". (Conference Report, abril de 1901, p. 63)

 

Eu também acredito nisso.

 

Muito agradecido pela oportunidade.

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pontesh,

 

é uma boa iniciativa,

entretanto, em primeiro lugar peço licensa para pedir que mantenha o foco do tópico.

 

para discutirmos assunto do post 213, sugiro que abra um novo tópico.

 

se fizer uma busca no forum encontrará alguns tópicos antigos e outros mais recentes, de membros com iniciativas semelhantes

 

caso encontre, procure contactá-los para movimentar idéias.

 

 

, você esta no Japão também?

nagoya

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hinon, agradecido.

 

Vou procurar para evitar redundâncias.

 

私が長野県諏訪市に住んでます。

本当にありがとございます。

ヒントがありますか。

 

Esta escrito acima.

 

Eu moro na cidade de Suwa na provincia de Nagano.

Muito agradecido.

Tem alguma dica.

 

Hinon, me perdoe; vocês tiveram ou tem tópicos de controle de estoque? Se sim, pode passar os links?

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Fabyo, sou nova por aqui e estou apanhando um pouquinho...rsrs

Fiz uma adaptação em meu sistema de cadastro para fornecedores pq gostaria que os estados do formulario viessem de uma tabela mysql, copiei seu codigo na minha adaptação e deu certo só que no lugar de cadastrar o estado cadastra a id do estado e mostra o numero da id no arquivo listar.php

seria possível você me dar uma ajuda?

Obrigada

Abçs

 

Pessoal to dando continuidade nos tutoriais para iniciantes e esse aqui é para quem ja leu:

 

http://forum.imasters.com.br/index.php?showtopic=191441

 

Esse tutorial é para usuarios iniciantes que estao começando agora e querem aprender a mecher com PHP e banco de dados, sei que é dificil achar um tutorial bem mastigado assim, e falta exemplos completos no manual do php, e as vezes a pessoa acaba pegando um script pronto mas nao entende muito e o pior a maioria das vezes o sistema esta mal feito assim o usuario acaba aprendendo errado pensando que é o certo.

 

esse tutorial é bem basico, e criei como exemplo 2 tabelas uma para usuario e outra para estados

e é mais para você aprender mesmo , acabei criando varias funções que ficaram mais para aprendizado do que funcional, mas a ideia é você entender como as coisas funcionam

 

com esse sistema você vai aprender:

 

* Listar os dados de um banco de dados

* Salvar dados do formulario para banco de dados

* Excluir dados do banco

* Editar dados do banco

* Carregar um combobox(select do html) com dados vindos do banco de dados

* Validações especiais para deixar o php funcionando 100% sem erros

* Varios macetes e dicas de uso em sistemas com o uso de um arquivo de verificações basicas o init.php

 

OBS Esse sistema esta puro em PHP nao me preocupei com nenhuma validação em javascript

para isso voce pode acessar o forum de javascript e tirar as duvidas sobre validações de formulario

e tambem nao me preocupei com validações de dados vindos do formulario, pois eu estou planejando fazer um tutorial só para isso, para validações em php com filtros e segurança de dados

tabela.sql

<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'>

CREATE TABLE usuarios (

id_usuario SMALLINT ( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,

nome VARCHAR ( 45 ) NOT NULL,

email VARCHAR ( 64 ) NOT NULL UNIQUE,

data_nascimento DATE NOT NULL,

sexo ENUM ( 'M', 'F' ) NOT NULL,

preferencias SET ( 'R', 'S', 'P', 'F' ) NOT NULL COMMENT 'R=Romance;S=Suspense;P=Policial;F=Ficção',

salario DECIMAL ( 10,2 ) NOT NULL,

endereco VARCHAR ( 30 ) NOT NULL,

bairro VARCHAR ( 20 ) NOT NULL,

cidade VARCHAR ( 45 ) NOT NULL,

fk_estado SMALLINT ( 5 ) UNSIGNED NOT NULL,

login VARCHAR ( 40 ) NOT NULL,

senha CHAR ( 32 ) NOT NULL

);

 

CREATE TABLE estados (

id_estado SMALLINT ( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,

uf CHAR ( 2 ) NOT NULL,

estado VARCHAR ( 19 ) NOT NULL UNIQUE

);

 

INSERT INTO estados VALUES ( NULL , "AC", "Acre");

INSERT INTO estados VALUES ( NULL , "AL", "Alagoas");

INSERT INTO estados VALUES ( NULL , "AP", "Amapá");

INSERT INTO estados VALUES ( NULL , "AM", "Amazonas");

INSERT INTO estados VALUES ( NULL , "BA", "Bahia");

INSERT INTO estados VALUES ( NULL , "CE", "Ceará");

INSERT INTO estados VALUES ( NULL , "DF", "Distrito Federal");

INSERT INTO estados VALUES ( NULL , "ES", "Espirito Santo");

INSERT INTO estados VALUES ( NULL , "GO", "Goiás");

INSERT INTO estados VALUES ( NULL , "MA", "Maranhão");

INSERT INTO estados VALUES ( NULL , "MT", "Mato Grosso");

INSERT INTO estados VALUES ( NULL , "MS", "Mato Grosso do Sul");

INSERT INTO estados VALUES ( NULL , "MG", "Minas Gerais");

INSERT INTO estados VALUES ( NULL , "PA", "Pará");

INSERT INTO estados VALUES ( NULL , "PB", "Paraíba");

INSERT INTO estados VALUES ( NULL , "PR", "Paraná");

INSERT INTO estados VALUES ( NULL , "PE", "Pernambuco");

INSERT INTO estados VALUES ( NULL , "PI", "Piauí");

INSERT INTO estados VALUES ( NULL , "RN", "Rio Grande do Norte");

INSERT INTO estados VALUES ( NULL , "RS", "Rio Grande do Sul");

INSERT INTO estados VALUES ( NULL , "RJ", "Rio de Janeiro");

INSERT INTO estados VALUES ( NULL , "RO", "Rondônia");

INSERT INTO estados VALUES ( NULL , "RR", "Roraima");

INSERT INTO estados VALUES ( NULL , "SC", "Santa Catarina");

INSERT INTO estados VALUES ( NULL , "SP", "São Paulo");

INSERT INTO estados VALUES ( NULL , "SE", "Sergipe");

INSERT INTO estados VALUES ( NULL , "TO", "Tocantins"); </div>

 

como podem ver é uma tabela apenas para podermos usar no sistema, sao coisas ficticias que usei apenas para passar exemplos uteis de varios campos no banco de dados, talves o unico campo que você nao saiba para que serve nessa tabela é o "preferencias", esse preferencia é para o usuario escolher qual tipo de filme ele gosta, usei esse exemplo para você entender como usar o campo SET() do mysql

 

pessoal eu nao faço codigos html fora do padrao, e todos meus codigos sao valido pelo W3C, mas eu nao me preocupei em deixar os codigos validos pois a ideia é passar mais informação sobre o sistema de cadastro, e se eu for me preoculpar com tudo isso eu nunca iria postar esse tutorial, pois meu tempo anda curto demais.

 

index.html:

<a href="cadastro.php">Cadastrar Usuarios</a><br />
<a href="listar.php">Listar Usuarios</a>

cadastro.php

 

<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'><?php

//Verifico se o arquivo existe

if(file_exists("init.php")) {

require "init.php";

} else {

echo "Arquivo init.php nao foi encontrado";

exit;

}

//verifico se a função que eu criei existe, vai que alguem pegou meu script e apagou ela = )

if(!function_exists("Abre_Conexao")) {

echo "Erro o arquivo init.php foi auterado, nao existe a função Abre_Conexao";

exit;

}

 

Abre_Conexao();

$re = mysql_query("select * from estados order by estado");

//verifico se nao deu erro de mysql

if(mysql_errno() != 0) {

//verifico se a $errros existe, mesma coisa vai que alguem meche no script e apagou ela

if(!isset($erros)) {

echo "Erro o arquivo init.php foi auterado, nao existe \$erros";

exit;

}

echo $erros[mysql_errno()];

exit;

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Cadastro</title>

<style>

<!--

.textBox { border:1px solid gray; width:200px;}

-->

</style>

</head>

 

<body>

<form id="form1" name="form1" method="post" action="salvar.php">

<table width="400" border="0" align="center">

<tr>

<td width="145">Nome</td>

<td width="245"><input name="nome" type="text" id="nome" maxlength="45" class="textBox" /></td>

</tr>

<tr>

<td>Email</td>

<td><input name="email" type="text" id="email" maxlength="64" class="textBox" /></td>

</tr>

<tr>

<td>Data Nascimento</td>

<td>

<?php

/*aqui eu criei uma função para montar o combo para mim, na propria função a seguir eu explico como ela funciona*/

echo monta_select("dia", 1, 31);

echo monta_select("mes", 1, 12);

echo monta_select("ano", 1940, 1988);

?>

</td>

</tr>

<tr>

<td>Sexo</td>

<td><input name="sexo" type="radio" value="M" checked="checked" /><label>Masculino</label>

<input name="sexo" type="radio" value="F" /> <label>Feminino</label></td>

</tr>

<tr>

<td>Preferencias de Filmes </td>

<td><select name="preferencias[]" class="textBox" multiple="multiple" id="preferencias">

<option value="R">Romance</option>

<option value="S">Suspense</option>

<option value="P">Policial</option>

<option value="F">Ficção</option>

</select>

</td>

</tr>

<tr>

<td>Salario</td>

<td><input name="salario" type="text" id="salario" maxlength="5" class="textBox" /></td>

</tr>

<tr>

<td>Endereco</td>

<td><input name="endereco" type="text" id="endereco" maxlength="30" class="textBox" /></td>

</tr>

<tr>

<td>Bairro</td>

<td><input name="bairro" type="text" id="bairro" maxlength="20" class="textBox" /></td>

</tr>

<tr>

<td>Cidade</td>

<td><input name="cidade" type="text" id="cidade" maxlength="45" class="textBox" /></td>

</tr>

<tr>

<td>Estado</td>

<td><select name="estados" id="estados" class="textBox" >

<?php

//pego os dados do banco para montar o combo do estados

while($l = mysql_fetch_array($re)) {

$id = $l["id_estado"];

$estado = $l["estado"];

$uf = $l["uf"];

echo "<option value=\"$id\">$uf - $estado</option>\n";

}

//fecho a conexao com o banco

@mysql_close();

 

?>

</select> </td>

</tr>

<tr>

<td>Login</td>

<td><input name="login" type="text" id="login" maxlength="40" class="textBox" /></td>

</tr>

<tr>

<td>Senha</td>

<td><input name="senha" type="password" id="senha" maxlength="10" class="textBox" /></td>

</tr>

<tr>

<td> </td>

<td><input type="submit" name="Submit" value="Salvar" style="cursor:pointer;" /></td>

</tr>

</table>

</form>

</body>

</html></div>

 

salvar.php

 

<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'><?php

/*verifico se os dados estao vindos do formulario, porque se uma pessoa acessar essa pagina diretamente

poderia dar erro, entao eu testo antes*/

if($_SERVER["REQUEST_METHOD"] == "POST") {

$nome = $_POST["nome"];

$email = $_POST["email"];

$data = "{$_POST["ano"]}-{$_POST["mes"]}-{$_POST["dia"]}";

$sexo = $_POST["sexo"];

//if e else simplificado, verifico se foi escolhido alguma preferencia e crio um array

$preferencias = isset($_POST["preferencias"]) ? implode(",", $_POST["preferencias"]) : "";

$salario = $_POST["salario"];

$endereco = $_POST["endereco"];

$bairro = $_POST["bairro"];

$cidade = $_POST["cidade"];

$estados = $_POST["estados"];

$login = $_POST["login"];

$senha = $_POST["senha"];

 

//aqui ja expliquei, mas denovo: ele verifica se o arquivo existe

if(file_exists("init.php")) {

require "init.php";

} else {

echo "Arquivo init.php nao foi encontrado";

exit;

}

//ja expliquei, mas ultima vez: verifica se a função que eu vou usar existe

if(!function_exists("Abre_Conexao")) {

echo "Erro o arquivo init.php foi auterado, nao existe a função Abre_Conexao";

exit;

}

 

Abre_Conexao();

if(@mysql_query("INSERT INTO usuarios VALUES ( NULL , '$nome', '$email', '$data' , '$sexo',

'$preferencias', '$salario', '$endereco', '$bairro', '$cidade', '$estados', '$login', MD5( '$senha' ) )")) {

//verifiquei acima se deu certo o comando e aqui verifico se foi mesmo gravado o dado no banco

if(mysql_affected_rows() == 1){

echo "Registro efetuado com sucesso<br />";

}

 

} else {

//verifico se nao estao tentando gravar um dado que ja existe, pois usei UNIQUE na tabela

if(mysql_errno() == 1062) {

echo $erros[mysql_errno()];

exit;

} else {

echo "Erro nao foi possivel efetuar o cadastro";

exit;

}

@mysql_close();

}

 

}

?>

<a href="index.html">Voltar</a></div>

 

listar.php

 

<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'><a href="index.html">Voltar</a>

<?php

if(file_exists("init.php")) {

require "init.php";

} else {

echo "Arquivo init.php nao foi encontrado";

exit;

}

 

if(!function_exists("Abre_Conexao")) {

echo "Erro o arquivo init.php foi auterado, nao existe a função Abre_Conexao";

exit;

}

 

Abre_Conexao();

$re = mysql_query("SELECT * FROM usuarios INNER JOIN estados ON usuarios.fk_estado = estados.id_estado ORDER BY usuarios.nome;");

if(mysql_errno() != 0) {

if(!isset($erros)) {

echo "Erro o arquivo init.php foi auterado, nao existe $erros";

exit;

}

echo $erros[mysql_errno()];

exit;

}

?>

 

<table width="100%" border="1">

<tr>

<td>Ações</td>

<td>Nome</td>

<td>Email</td>

<td>Data Nasc.</td>

<td>Sexo</td>

<td>Preferencias</td>

<td>salario</td>

<td>Endereço</td>

<td>Bairro</td>

<td>Cidade</td>

<td>Estado</td>

<td>Login</td>

</tr>

<?php

while($l = mysql_fetch_array($re)) {

$id = $l["id_usuario"];

$nome = $l["nome"];

$email = $l["email"];

$data = implode("/", array_reverse(explode("-", $l["data_nascimento"])));

$sexo = $l["sexo"] == "M" ? "Masculino" : "Feminino";

$preferencia = Pega_Preferencia($l["preferencias"]);

$salario = $l["salario"];

$endereco = $l["endereco"];

$bairro = $l["bairro"];

$cidade = $l["cidade"];

$estado = $l["estado"];

$login = $l["login"];

 

echo "

<tr>

<td><a href=\"editar.php?id=$id\">[Editar]</a> <a href=\"excluir.php?id=$id\">[Excluir]</a></td>

<td> $nome</td>

<td> $email</td>

<td> $data</td>

<td> $sexo</td>

<td> ". monta_combo($preferencia). "</td>

<td> ". number_format($salario, 2, ",", "."). "</td>

<td> $endereco</td>

<td> $bairro</td>

<td> $cidade</td>

<td> $estado</td>

<td> $login</td>

</tr>\n";

}

@mysql_close();

?>

</table></div>

 

editar.php

 

<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'><?php

if(file_exists("init.php")) {

require "init.php";

} else {

echo "Arquivo init.php nao foi encontrado";

exit;

}

 

if(!function_exists("Abre_Conexao")) {

echo "Erro o arquivo init.php foi auterado, nao existe a função Abre_Conexao";

exit;

}

$id = $_GET["id"];

 

Abre_Conexao();

$re = mysql_query("select count(*) as total from usuarios where id_usuario = $id");

$total = mysql_result($re, 0, "total");

 

if($total == 1) {

$re = mysql_query("select * from usuarios, estados where estados.id_estado = usuarios.fk_estado and usuarios.id_usuario = $id");

$dados = mysql_fetch_array($re);

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Cadastro</title>

<style>

<!--

.textBox { border:1px solid gray; width:200px;}

-->

</style>

</head>

 

<body>

<form id="form1" name="form1" method="post" action="salvar_edicao.php">

<input type="hidden" name="id" value="<?php echo $id; ?>" />

<table width="400" border="0" align="center">

<tr>

<td width="145">Nome</td>

<td width="245"><input name="nome" type="text" id="nome" maxlength="45" class="textBox" value="<?php echo $dados["nome"]; ?>" /></td>

</tr>

<tr>

<td>Email</td>

<td><input name="email" type="text" id="email" maxlength="64" class="textBox" value="<?php echo $dados["email"]; ?>" /></td>

</tr>

<tr>

<td>Data Nascimento</td>

<td>

<?php

$arr = explode("-", $dados["data_nascimento"]);

 

echo Seleciona_Item($arr[2], monta_select("dia", 1, 31));

echo Seleciona_Item($arr[1], monta_select("mes", 1, 12));

echo Seleciona_Item($arr[0], monta_select("ano", 1940, 1988));

?>

</td>

</tr>

<tr>

<td>Sexo</td>

<td><input name="sexo" type="radio" value="M" <?php echo $dados["sexo"] == "M" ? "checked=\"checked\"" : ""; ?> /><label>Masculino</label>

<input name="sexo" type="radio" value="F" <?php echo $dados["sexo"] == "F" ? "checked=\"checked\"" : ""; ?> /> <label>Feminino</label></td>

</tr>

<tr>

<td>Preferencias de Filmes </td>

<td><select name="preferencias[]" class="textBox" multiple="multiple" id="preferencias">

<?php

$combo = "<option value=\"R\">Romance</option>

<option value=\"S\">Suspense</option>

<option value=\"P\">Policial</option>

<option value=\"F\">Ficção</option>";

 

$arr = explode(",", $dados["preferencias"]);

for($i = 0; $i < count($arr); $i++) {

$combo = preg_replace("#<option value=\"{$arr[$i]}\">#is", "<option value=\"{$arr[$i]}\" selected=\"selected\">", $combo);

}

echo $combo;

?>

 

</select>

</td>

</tr>

<tr>

<td>Salario</td>

<td><input name="salario" type="text" id="salario" maxlength="5" class="textBox" /></td>

</tr>

<tr>

<td>Endereco</td>

<td><input name="endereco" type="text" id="endereco" maxlength="30" class="textBox" /></td>

</tr>

<tr>

<td>Bairro</td>

<td><input name="bairro" type="text" id="bairro" maxlength="20" class="textBox" /></td>

</tr>

<tr>

<td>Cidade</td>

<td><input name="cidade" type="text" id="cidade" maxlength="45" class="textBox" /></td>

</tr>

<tr>

<td>Estado</td>

<td><select name="estados" id="estados" class="textBox" >

<option value="0">Selecione</option>

<?php

$re = mysql_query("select * from estados order by estado");

if(mysql_errno() != 0) {

if(!isset($erros)) {

echo "Erro o arquivo init.php foi auterado, nao existe $erros";

exit;

}

echo $erros[mysql_errno()];

exit;

}

while($l = mysql_fetch_array($re)) {

$id = $l["id_estado"];

$estado = $l["estado"];

$uf = $l["uf"];

echo Seleciona_Item($dados["id_estado"], "<option value=\"$id\">$uf - $estado</option>");

 

}

@mysql_close();

 

?>

</select> </td>

</tr>

<tr>

<td>Login</td>

<td><input name="login" type="text" id="login" maxlength="40" class="textBox" /></td>

</tr>

<tr>

<td>Senha</td>

<td><input name="senha" type="password" id="senha" maxlength="10" class="textBox" /></td>

</tr>

<tr>

<td> </td>

<td><input type="submit" name="Submit" value="Salvar" style="cursor:pointer;" /></td>

</tr>

</table>

</form>

</body>

</html></div>

 

excluir.php

 

<?php
if($_SERVER["REQUEST_METHOD"] == "GET") {
if(file_exists("init.php")) {
	require "init.php";		
} else {
	echo "Arquivo init.php nao foi encontrado";
	exit;
}

if(!function_exists("Abre_Conexao")) {
	echo "Erro o arquivo init.php foi auterado, nao existe a função Abre_Conexao";
	exit;
}
$id = $_GET["id"];

Abre_Conexao();
if(mysql_query("delete from usuarios where id_usuario = $id")) {
	if(mysql_affected_rows() == 1){
		echo "Registro deletado com sucesso<br />";
	}	
}	
}

?>
<a href="listar.php">Voltar</a>

salvar_edicao.php

 

<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'><?php

if($_SERVER["REQUEST_METHOD"] == "POST") {

$id = $_POST["id"];

$nome = $_POST["nome"];

$email = $_POST["email"];

$data = "{$_POST["ano"]}-{$_POST["mes"]}-{$_POST["dia"]}";

$sexo = $_POST["sexo"];

$preferencias = isset($_POST["preferencias"]) ? implode(",", $_POST["preferencias"]) : "";

$salario = $_POST["salario"];

$endereco = $_POST["endereco"];

$bairro = $_POST["bairro"];

$cidade = $_POST["cidade"];

$estados = $_POST["estados"];

$login = $_POST["login"];

$senha = $_POST["senha"];

 

if(file_exists("init.php")) {

require "init.php";

} else {

echo "Arquivo init.php nao foi encontrado";

exit;

}

 

if(!function_exists("Abre_Conexao")) {

echo "Erro o arquivo init.php foi auterado, nao existe a função Abre_Conexao";

exit;

}

 

Abre_Conexao();

if(@mysql_query("UPDATE usuarios SET nome = '$nome',

email = '$email',

sexo = '$sexo',

preferencias = '$preferencias',

salario = '$salario',

endereco = '$endereco',

bairro = '$bairro',

cidade = '$cidade',

fk_estado = '$estados',

login = '$login',

senha = MD5( '$senha' ) WHERE id_usuario = $id")) {

 

if(mysql_affected_rows() == 1){

echo "Registro atualizado com sucesso";

}

 

} else {

if(mysql_errno() == 1062) {

echo $erros[mysql_errno()];

exit;

} else {

echo "Erro nao foi possivel efetuar a edição";

exit;

}

@mysql_close();

}

 

}

?>

<a href="listar.php">Voltar</a></div>

 

 

arquivos completos para download: Cadastro.zip

Pessoal qualquer duvida quanto os sistema ou alguma duvida só postar no forum mesmo que responderemos

 

bom espero que esse exemplo seja util

 

versao do sistema de cadastro mais simples

http://forum.imasters.com.br/index.php?showtopic=201046

 

abraços

 

OBS Topico atualizado 24/06/2009 ir para ultimas paginas nelas tem outras atualizações do sistema de cadastro incluindo sistema de login com niveis de acesso

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

pontesh,

Hinon, me perdoe; vocês tiveram ou tem tópicos de controle de estoque? Se sim, pode passar os links?

eu me referia sobre o desenvolvimento opensource.

 

Novamente frizando, mantenha o assunto dentro do tema do tópico.

Para outras questões, caso não encontre soluções no forum, poste um novo tópico por favor.

 

De um modo geral, controle de estoque é relativo às necessidades de onde é aplicado.

Faça um planejamento, defina métricas, análises, projeto, etc. Mais de 80% de um aplicativo é planejamento e análises.

Obviamente, se quiser fazer algo profissional e seguro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esta bem Hinom.

 

Agradecido pela sábia moderação.

 

Até nesta parte tenho me sentido seguro com relação a este fórum, parabéns.

 

Abraços para você, para o Fabyo e toda a galera.

 

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá fabyo, dúvida, porque usuário que está com estatus banido não pode editar o próprio cadastro?

 

você sabe como ficaria uma página para administrador que possa atribuir o status?

 

Outra dúvida, estou fazendo o arquivo editar, e não estou conseguindo fazer aparecer as opções de estados:

 

veja como está o editar.php na parte dos estados:

 

 

<tr>
	  <td>Estado</td>
	  <td><select name="estados" id="estados" class="textBox" >
		  <option value="0">Selecione</option>
<?php
$re = mysql_query("select * from estados order by estado");
if(mysql_errno() != 0) {
	if(!isset($erros)) {
		echo "Erro o arquivo init.php foi auterado, nao existe $erros";
		exit;
	}
	echo $erros[mysql_errno()];
	exit;
}
while($l = mysql_fetch_array($re)) {
	$id	 = $l["id_estado"];
	$estado = $l["estado"];
	$uf	 = $l["uf"];			
	echo Seleciona_Item($resultado["id_estado"], "<option value=\"$id\">$uf - $estado</option>");
	
}
@mysql_close();
		
?>
	  </select>	  </td>
	</tr>

Onde estou errando?

 

outra coisa, quando vou editar e salvar, aparece esse erro! O que significa?

[1062] = "Erro campo unico na tabela, nao pode cadastrar pois ele ja existe";

 

 

Obrigado se puder ajudar seria ótimo.

 

você tem algum sistema de upload de imagens com redimensionamento? (poderia indicar algum?)

 

 

Obrigado por tudo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

* Entao o cara banido nao pode editar porque simplesmente ele foi banido ou seja ele perdeu o direito que ele tinha

 

* Voce logando como admin ja pode editar o status de qualquer usuario

 

* O editar ja estava funcionando o estados

 

* [1062] = "Erro campo unico na tabela, nao pode cadastrar pois ele ja existe"; ou seja você esta tentando digitar um campo que ja foi cadastrado no banco, mesmo que você inseriu algum campo vazio, por ser um campo unico ele nao aceita outro campo vazio.

 

sim tenho esta no laboratorio de script o meu sistema de upload

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.