Bem vindo ao SOS Designers

Faça o seu cadastro gratuito no Portal SOS Designers e tenha um acesso personalizado.

Empresas

Cadastre gratuitamente suas vagas, crie sua propria Lista de Curriculos Favoritos, e tenha um acesso personalizado.

Usuarios

Cadastre gratuitamente seu curriculo, crie sua propria Lista de Noticias Favoritas e tenha um acesso personalizado.

Área de Empresas | Vagas

Área de acesso a empresas cadastradas que desejam postar vagas de empregos no Portal e pesquisar curriculos.

Cadastre-se gratuitamente
Esqueceu a sua senha?

Área de Usuarios | Curriculos

Área do Usuario que deseja cadastrar seu curriculo e pesquisar vagas.



Cadastre-se gratuitamente
Esqueceu a sua senha?

Teste
Localone Hospedagem

PHP

Mural de recados

Primeiramente vamos estruturar o banco de dados e criar um arquivo de conexão entre o banco de dados e o site.

 

 

 

Abaixo o código para criação das tabelas no banco de dados MYSQL:

 

 

 

CREATE TABLE `mural` (

 

  `id_recado` int(10) unsigned NOT NULL auto_increment,

 

  `titulo` varchar(80) default NULL,

 

  `conteudo` longtext,

 

  `data_cadastro` date default NULL,

 

  `autor` text,

 

  `email` text,

 

  PRIMARY KEY  (`id_recado`)

 

) ;

 

Banco

 

 

Agora vamos criar o arquivo de conexão do sistema com o banco de dados.

 

 

 

conexao.php

 

 

$conexao = mysql_connect (“endereço do banco”,“usuário”, “senha”) OR die (mysql_error()); // Conectando ao mysql

 

 

 

mysql_select_db ("nomedobanco")  OR die (mysql_error()); // Conectando em uma base de dados

 

?>

 

 

A conexão com o banco de dados esta feito, agora vamos iniciar a elaboração da programação do nosso mural de recados.

 

 

 

 

index.php

 

 

 

A página index.php será responsável no envio das mensagens dos usuários e exibição dos recados no site.

 

Veja abaixo o código fonte documentado da página:

 

<!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>Mural de recados - Portal SOS Designers</title>
</head>
<body>
<h1>:: Mural de Recados - Portal SOS Designers::</h1>
<fieldset> <legend>Postar mensagem no mural de recados </legend>
<!— Abaixo o formulário de contato responsável pelo cadastro das mensagens. As informações do formulário serão enviadas para a pagina cadastro.php responsável pelo registro das mensagens no banco de dados.-->
<form id="formulario" name="formulario1" method="post" action="cadastro.php">
<strong>Seu nome </strong><br /> <input name="nome" type="text" id="nome" /> <br /> <br />
<strong>Seu email :</strong> <br /> <input name="email" type="text" id="email" /> <br /> <br />
<strong>Titulo do recado :</strong> <br /><input name="titulo" type="text" id="titulo" /> <br /> <br />
<strong>Seu recado:</strong><br /> <textarea name="mensagem" cols="50" rows="5" id="mensagem"></textarea> <br /> <br />
<input type="submit" name="Submit" value="Postar mensagem" />
<input type="reset" name="Submit2" value="Redefinir formulario" /> </form></fieldset><br /><fieldset><legend>
<strong> Exibir mensagens do mural de recados</strong> </legend><br />  

 

 

 

 

 

 <? include "conexao.php"; // Incluir o arquivo de conexão com o banco de dados

 

Abaixo vamos exibir os recados com um sistema de paginação

 

 

 

$recados = mysql_query ("SELECT * FROM mural ORDER BY id_recado DESC") OR die (mysql_error());  // Selecionando todas as mensagens da tabela mural em ordem de registro

 

$pagina = $_GET['pagina'];  // Pega o numero da pagina caso ocorra a paginação

 

$lpp = 5; // Números de registros por página.

 

$total = mysql_num_rows ($recados); // Pega o numero total de registros do banco de dados.

 

$paginas = ceil($total / $lpp); // Retorna o total de páginas

 

if(!isset($pagina)) { $pagina = 0; } // Especifica uma valor para variável pagina

 

$inicio = $pagina * $lpp;  //Retorna qual o primeiro registro a ser mostrado no MySQL

 

$sql = mysql_query("SELECT * FROM mural ORDER BY id_recado DESC LIMIT $inicio,$lpp") OR die (mysql_error()); //Seleciona todos os recados postados para exibir em paginações

 

 

 

while($exibir_recados=mysql_fetch_array($sql))

 

{ // Exibe todos os registros da tabela mural na página.

 

 

 

$data = explode('-',$exibir_recados[data_cadastro]); // Vamos utilizar neste tutorial uma função do PHP chamado “explode” responsável em dividir uma determinada string em partes, neste caso vamos pegar a data gravada no banco de dados que tem como padrão o formato (aaaa-mm-dd) e exibir na página no formato brasileiro (dd-mm-aaaa)

 

?>

 

<br />

 

Titulo: <strong><? echo "$exibir_recados[titulo]"; // Exibe o titulo do recado postado pelo usuário.

 

?></strong>

 

<br />

 

Postado por: <strong> <? echo "$exibir_recados[autor] </strong> em $data[2]/$data[1]/$data[0]"; // Exibe o nome do usuário e a data da postagem do recado já no formato brasileiro.

 

?>

 

<br />

 

Recado: <? echo "$exibir_recados[conteudo] <hr />";  // Exibe o recado do usuário.

 

 

 

}

 

 

 

// Fim dos registros

 

// Abaixo a paginação caso seja necessário.

 

 

 

if($pagina > 0) // Link para pagina anterior do sistema de paginação

 

{

 

 

 

$menos = $pagina - 1;

 

$url = "index.php?pagina=$menos";

 

echo "<a href=$url>Anterior</a>n";

 

}

 

 

 

for ($i=0; $i<$paginas;$i++)  // No caso de vários registros o sistema lista o numero de paginas

 

{

 

$url = "index.php?pagina=$i";

 

if ($total<=$lpp){

 

echo "";

 

}

 

else

 

{

 

echo " | <a href=$url>$i</a>n";

 

}

 

}

 

 

 

 

 

if($pagina < ($paginas - 1)) // Link para a próxima pagina do sistema de paginação

 

{

 

  $mais = $pagina + 1;

 

  $url = "index.php?pagina=$mais";

 

  echo " | <a href=$url>Próxima</a>n";

 

}

 

?>

 

</fieldset>

 

</body>

 

</html>

 

 

 

 

 

Agora vamos criar a programação da página que grava os registros enviados do formulário no banco de dados.

 

 

 

cadastro.php

 

 

< ?

 

extract($_POST); // Pega todos os campos vindos do formulário peço método POST de uma só vez

 

 

 

$data = date("Ymd"); // Variável que armazena a data atual no banco de dados

 


$recados = mysql_query("INSERT INTO mural (data,titulo,conteudo,autor,email) VALUES ('$data','$titulo','$mensagem','$nome','$email')") OR die (mysql_error());
// Adiciona o recado do usuário no banco de dados     

 

 

 

mysql_close(); // fecha a conexão com o banco de dados
  
 header("location:index.php")
// Após adicionar o registro no banco de dados o sistema redireciona a página para “index.php”
? >

 

 

Qualquer dúvida relacionado ao sistema por favor utilize o Fórum de Duvidas do Portal SOS Designers.

 

Forte abraço a todos!


Sobre o Colunista:

Luiz Antonio Bovi Luiz Antonio Bovi
Criador e administrador do Portal SOS Designers, desenvolvedor web desde 2002, ênfase na programação PHP com banco de dados mysql e elaboração de layouts e trabalhos gráficos.

Saiba mais...




© Copyright 2002-2010
Portal SOS Designers
Webmaster: Luiz Antonio Tagawa Bovi