Sorte Do Dia Em PHP

Uma das coisas que gosto de receber no dia a dia são mensagens carinho de amigos ou parentes me desejando um bom dia de trabalho, entre outras coisas.

É interessante e você encontra esse tipo de sistema em vários lugares. Sejam eles no Orkut, Facebook, Twitter, entre outros.

Quando pensa em desenvolver algo deste gênero, geralmente imagina um código simples, que conta com arrays e imprime algo randomicamente, correto?

Em parte é até bom imaginar isso, mas… você já tentou desenvolver um sisteminha como esse?

Na matéria de hoje elaborei algo prático onde você pode postar mensagens diárias e imprimir em tela.

sorte do dia

Configurando a Base de Dados

Antes de tudo, é necessário configurar a base de dados.

Com o BD já criado, acesse o ficheiro “conexao.php” e configure o ficheiro alterando as informações de acesso à base de dados (conforme script a seguir).



<?php

<?

$host      = "SERVIDOR";           // SERVIDOR
$database  = "DATABASE";          // BASE DE DADOS
$login_db  = "USUARIO";          // USUARIO MYSQL
$senha_db  = "SENHA";           // SENHA MYSQL

$conn      = mysql_connect($host, $login_db, $senha_db);

mysql_select_db($database, $conn);

?>

Após a configuração, vamos agora criar a tabela que será usada!

Criando a Tabela na Base de Dados:

Para configurar a base de dados através do script, abra o ficheiro script-sql.txt (disponível em anexo) e cole seu conteúdo no Programa utilizado para gerenciamento da base de dados.

Em nossas matérias utilizamos como padrão o MySQLFront. Caso tu também esteja utilizando este programa, clique em SQL Editor e cole o conteúdo do script (conforme disponibilizado a seguir).



----- INSTALANDO A TABELA -----

CREATE TABLE `tbl_frases` (
  `id_frase` int(11) NOT NULL auto_increment,
  `frase` varchar(255) default NULL,
  `data_publicacao` varchar(11) default NULL,
  `status` int(11) default NULL,
  PRIMARY KEY  (`id_frase`)
);

INSERT INTO `tbl_frases` (`id_frase`,`frase`,`data_publicacao`,`status`) VALUES (11,'Ame quem te ama e você será feliz.','2010-12-06',1);
INSERT INTO `tbl_frases` (`id_frase`,`frase`,`data_publicacao`,`status`) VALUES (14,'O amor é eterno quando você está disposto a se dar.','2010-12-07',1);

OBS.: Veja que no campo data_publicacao estou trabalhando com “varchar”. Isso é opcional meu, mas se você quiser, poderá trabalhar com o “date”.

Após importar os dados, você já poderá fazer uso do sistema abaixo.

Exmplorando o Sistema – Página Inicial:

Bem… vamos dar uma olhada no script e ver como podemos trabalhar com ele?

No script a seguir (página index.php) disponibilizei o conteúdo de forma prática, de forma que você possa efetuar a busca por data (conforme script a seguir).



<? include('conexao.php'); ?>

<br><center><h2>WebMaster.PT</h2> <p><br>  Sorte do dia em PHP</p><p>&nbsp;</p></center> <br><br>
<a href='frases_cadastrar.php'>Cadastrar Frase</a> - <a href='frases_listar.php'>Listar Frases</a><br><br>

<?php

$query_frase = "SELECT * FROM tbl_frases WHERE data_publicacao = '". date('Y-m-d') ."' and status = '1' order by rand()";
$rs_frase    = mysql_query($query_frase);

$total_frases = mysql_num_rows($rs_frase);

$campo_frase = mysql_fetch_array($rs_frase);

if($total_frases >= 1){

echo "<b>Frase do dia: </b> ". $campo_frase['frase'];

}else{

echo "Não existe frase cadastrada no dia de hoje.";

}

?>

As frases entrarão em formato randomico, isso é: Você poderá cadastrar quantas mensagens quiser para uma data específica.

Caso não haja nenhuma frase cadastrada para esta data, o sistema informará que não há nenhuma data para aquele dia.

Exmplorando o Sistema – Página de Cadastro:

A página de cadastro não tem mistério. Você terá apenas de digitar a frase do dia e a data que você quer que seja publicado o conteúdo.

Após isso, basta apenas clicar no botão “Enviar” (conforme script a seguir).



<html>
<head>
<title>WebMaster.PT - Trabalhando com galeria de vídeos</title>
</head>
<body><center><br><h2>WebMaster.PT</h2><br>Sorte do dia em PHP<br><Br></center>
<div align="center">
  <form action="script_frases.php?acao=cadastrar" method="post" enctype="multipart/form-data" name="form1">
    <table width="500" border="0" cellspacing="5">
      <tr>
        <td width="56">
          <div align="left"><strong>Frase:</strong></div>
        </td>
        <td width="128"><div align="left">
          <label>
          <input name="frase" type="text">
          </label>
        </div></td>
      </tr>
      <tr>
        <td><strong>Data de Publica&ccedil;&atilde;o:</strong></td>
    <td><div align="left">
      <label></label>
      <input name="data_publicacao" type="text" id="arquivo">
    </div></td>
      </tr>
      <tr>
        <td colspan="2"><div align="center">
          <input type="submit" name="Submit" value="Enviar">
        </div></td>
      </tr>
    </table>
  </form>
</div>
</body>
</html>

Bem… não estaremos publicando neste as páginas de alterar ou a de listar, mas estaremos focando no script de tratamento.

Explorando o Sistema – Script de Tratamento:

No script abaixo, nós focamos em incluir os comandos de inserção, alteração e exclusão em um só local (justamente para facilitar futuros ajustes).



<?
include("conexao.php");

$acao = $_GET['acao'];

switch ($acao) {

case cadastrar:

$frase            = $_POST['frase'];
$data_publicacao  =  date('Y-d-m', strtotime($_POST['data_publicacao']));
$status        = "1";

$query_cadastrar = "insert into tbl_frases(frase, data_publicacao, status) VALUES('$frase', '$data_publicacao', '$status')";
$rs_cadastrar    = mysql_query($query_cadastrar);

if ($rs_cadastrar){
?>

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> alert ("Cadastro de frase efetuado com sucesso")</SCRIPT>
<SCRIPT language="JavaScript">window.location.href="index.php";</SCRIPT>

<? }else{ ?>

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> alert ("Erro ao cadastrar frase")</SCRIPT>
<SCRIPT language="JavaScript">window.location.href="index.php";</SCRIPT>

<?
}

break;

case alterar:

$id_frase         = $_POST['id_frase'];
$frase            = $_POST['frase'];
$data_publicacao  =  date('Y-d-m', strtotime($_POST['data_publicacao']));
$status        = "1";

$query_alterar = "UPDATE tbl_frases SET
                        frase           = '$frase',
                        data_publicacao = '$data_publicacao'

                        WHERE id_frase = '$id_frase'";
$rs_alterar = mysql_query($query_alterar);

if($rs_alterar){
?>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> alert ("Vídeo alterado com sucesso")</SCRIPT>
<SCRIPT language="JavaScript">window.location.href="index.php";</SCRIPT>

<?
}
else{
?>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> alert ("Erro ao alterar Vídeo")</SCRIPT>
<SCRIPT language="JavaScript">window.location.href="index.php";</SCRIPT>
<?
}

break;

case excluir:

$id_frase               = $_GET['id_frase'];

$query_excluir = "DELETE FROM tbl_frases WHERE id_frase = '$id_frase'";
$rs_excluir    = mysql_query ($query_excluir);

if($rs_excluir){

?>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> alert ("Frase excluída com sucesso")</SCRIPT>
<SCRIPT language="JavaScript">window.location.href="frases_listar.php";</SCRIPT>

<?
}
else
{
?>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> alert ("Erro ao excluir Frase")</SCRIPT>
<SCRIPT language="JavaScript">window.location.href="frases_listar.php";</SCRIPT>
<?
}

break;

}

?>

Obs.: Se você observar acima, verá que é muito mais fácil trabalhar desta maneira, não?

Como você pode ver, trata-se de um sistema simples. O que você acha de melhorá-lo?

Se você quiser, poderá inserir nele opções como:

- inserção de mensagens limitadas por dia;
- envio das mensagens por email;
- mensagens personalizadas para cada usuário, entre outros.

Espero que você goste deste sistema e que ele seja útil em seu dia a dia.

Download do código usado neste tutorial > Sorte Do Dia Em PHP

Be Sociable, Share!

1 Comentários

  1. Nuno Vilaça

    Mas como ponho isto no meu site??? Não percebo nada! Só diz como fazer, mas não sei como o instalar…

Participa! Comenta... para Nuno Vilaça