Olá pessoal,
Já procurei e não consegui encontrar algo "pronto" para me ajudar... é o seguinte:
Tenho uma lista com alguns itens, e gostaria de montar uma página em PHP + MySQL que liste os itens e tenha um campo texto para que a pessoa escreva seu nome no item que deseja doar, e após enviar o nome, aquele item fique indisponível para que outras pessoas o selecionem. A lista precisa sempre mostrar os itens, a pessoa que irá doar e os itens ainda sem doador.
É um trabalho voluntário que estou fazendo, sei que é algo simples mas sou um zero a esquerda em programação.
Se alguém puder ajudar, fico muito grata!!!
Ana Paula

Lista De Doações
Started By anapaula, 15/01/2009, 14:17
3 replies to this topic
#1
Posted 15/01/2009, 14:17
#2
Posted 15/01/2009, 15:06
Você pode criar uma tabela com a seguinte estrutura:
E o usar o seguinte pedaço de código:
Não esquecendo de trocar os dados das duas linhas a seguir o primeiro comentário pelos dados de acesso ao banco de dados.
Explicação:
É selecionado os itens do banco de dados que ainda não foram doados, e mostrado no "select". Quando o usuário escolher um e submeter, a linha do item é alterado no banco de dados de modo a não permitir a doação por duas vezes.
Agora basta implementar ao seu gosto.
Espero ter ajudado!
CREATE TABLE IF NOT EXISTS `lista_itens` ( `id` int(10) unsigned NOT NULL auto_increment, `item` varchar(255) collate latin1_general_ci NOT NULL, `ativo` tinyint(3) unsigned NOT NULL default '1', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1;
E o usar o seguinte pedaço de código:
<?php //Conectar e selecionar $link = mysql_connect('localhost', 'root', 'XXXX', TRUE) or die(mysql_error()); mysql_select_db('test', $link) or die(mysql_error()); if(count($_POST) > 0) { if(isset($_POST['nome']) && isset($_POST['item'])) { $query = mysql_query("UPDATE `lista_itens` SET `ativo` = 0 WHERE `id` = " . addslashes($_POST['item'])) or die(mysql_error()); if($query) { //ENVIAR OS DADOS DO DOADOR AQUI OU ARMAZENAR NO BD echo 'Obrigado por doar...'; } else { echo 'Ocorreu um erro ao doar. Tente novamente.'; } exit; } } $query = mysql_query("SELECT * FROM `lista_itens` WHERE `ativo` = 1") or die(mysql_error()); //Se existe itens na lista... if(mysql_num_rows($query) > 0) { echo '<form action="" method="post"><p>Nome: <input type="text" name="nome"/></p>'; echo '<p>Escolha o item para doar: <select name="item">'; while($row = mysql_fetch_object($query)) { echo '<option value="' . $row->id . '">' . $row->item . '</option>'; } echo '</select></p><p><input type="submit" value="DOAR"/></p>'; } else { echo 'Não existe nenhum item disponível.'; }
Não esquecendo de trocar os dados das duas linhas a seguir o primeiro comentário pelos dados de acesso ao banco de dados.
Explicação:
É selecionado os itens do banco de dados que ainda não foram doados, e mostrado no "select". Quando o usuário escolher um e submeter, a linha do item é alterado no banco de dados de modo a não permitir a doação por duas vezes.
Agora basta implementar ao seu gosto.
Espero ter ajudado!
#3
Posted 15/01/2009, 15:06
A gente pode conversar. me adiciona no msn para saber para quem é as doações, com apoio de quem, como vai funcionar o site. Cadastro e outras coisas mais. Se estiver a meu alcance eu posso ajudar.
Luckas_
********
cheeseboy_@hotmail.com
********
cheeseboy_@hotmail.com
#4
Posted 15/01/2009, 17:12
CMAC, muito obrigada! Vou testar e depois aviso se deu certo!!
Luckas, obrigada pela iniciativa! Esse projeto das doações é bem simples e será colocado dentro da intranet da empresa onde trabalho, como uma iniciativa dos próprios funcionários, numa página direta, pois não tivemos autorização para transformar em uma campanha oficial.
As doações são para a família de uma de uma de nossas copeiras, a casa dela recentemente pegou fogo e ela perdeu tudo, de móveis a roupas. A intenção no momento é realizar uma campanha interna somente, ela já recebeu muitas coisas porém faltaram várias importantes e por isso a decisão de criarmos uma lista com o que ela realmente necessita no momento. Caso ainda precisemos de ajuda, eu aviso. Muito obrigada!!
Eu de novo...
Inseri também na base de dados o campo "nome", pois preciso gravar quem escolheu o item. O que preciso inserir no código para que o input Nome seja gravado na coluna "nome" do meu bd? E como posso listar linha a linha, todos os itens e seus respectivos doadores? Sei que são perguntas muito básicas, mas tenho dificuldades com isso mesmo... rsrs
Obrigada!
Luckas, obrigada pela iniciativa! Esse projeto das doações é bem simples e será colocado dentro da intranet da empresa onde trabalho, como uma iniciativa dos próprios funcionários, numa página direta, pois não tivemos autorização para transformar em uma campanha oficial.
As doações são para a família de uma de uma de nossas copeiras, a casa dela recentemente pegou fogo e ela perdeu tudo, de móveis a roupas. A intenção no momento é realizar uma campanha interna somente, ela já recebeu muitas coisas porém faltaram várias importantes e por isso a decisão de criarmos uma lista com o que ela realmente necessita no momento. Caso ainda precisemos de ajuda, eu aviso. Muito obrigada!!
Eu de novo...
Inseri também na base de dados o campo "nome", pois preciso gravar quem escolheu o item. O que preciso inserir no código para que o input Nome seja gravado na coluna "nome" do meu bd? E como posso listar linha a linha, todos os itens e seus respectivos doadores? Sei que são perguntas muito básicas, mas tenho dificuldades com isso mesmo... rsrs
Obrigada!
<?php//Conectar e selecionar$link = mysql_connect('localhost', 'root', 'XXXX', TRUE) or die(mysql_error());mysql_select_db('test', $link) or die(mysql_error());if(count($_POST) > 0) { if(isset($_POST['nome']) && isset($_POST['item'])) { $query = mysql_query("UPDATE `lista_itens` SET `ativo` = 0 WHERE `id` = " . addslashes($_POST['item'])) or die(mysql_error()); if($query) { //ENVIAR OS DADOS DO DOADOR AQUI OU ARMAZENAR NO BD echo 'Obrigado por doar...'; } else { echo 'Ocorreu um erro ao doar. Tente novamente.'; } exit; }}$query = mysql_query("SELECT * FROM `lista_itens` WHERE `ativo` = 1") or die(mysql_error());//Se existe itens na lista...if(mysql_num_rows($query) > 0) { echo '<form action="" method="post"><p>Nome: <input type="text" name="nome"/></p>'; echo '<p>Escolha o item para doar: <select name="item">'; while($row = mysql_fetch_object($query)) { echo '<option value="' . $row->id . '">' . $row->item . '</option>'; } echo '</select></p><p><input type="submit" value="DOAR"/></p>';}else { echo 'Não existe nenhum item disponível.';}
2 user(s) are reading this topic
0 membro(s), 2 visitante(s) e 0 membros anônimo(s)