Área administrativa do Calendário (PHP Mysql)
Salve Salve galera Imasters,
Seguinte: vou publicar a área administrativa do calendário que eu desenvolvi:
Veja neste tópico. Calendário de Eventos PHP MySQL
Veja a agenda funcionando: CLIQUE AQUI PARA VER A AGENDA EM AÇÃO
Primeiramente vamos criar a página com formulário para add eventos:
admin.php
<?php
//criar a conexão com o banco
include "sql.php";
if(isset($_POST['done'])){
$evento = $_POST['evento'];
$dtevento = $_POST['dia']."-".$_POST['mes']."-".$_POST['ano'];
$autor = $_POST['autor'];
$hora = $_POST['hora'];
$local = $_POST['local'];
$conteudo = $_POST['conteudo'];
if(empty($evento) || empty($dtevento) || empty($conteudo) || empty($local)){
$erro = "Opa, você deve preencher todos os campos";
}else{
$sql = mysql_query("INSERT INTO `agenda`(`evento`, `dtevento`, `autor`, `hora`, `local`, `conteudo`) VALUES ('$evento', '$dtevento', '$autor', '$hora', '$local', '$conteudo')") or die(mysql_error());
if($sql){
$erro = "Dados cadastrados com sucesso!";
} else{
$erro = "Não foi possivel cadastrar os dados";
}
}
}
?>
<style type="text/css">
.campo{
width:400px;
}
</style>
<form name="form1" action="admin.php" method="POST" style="padding-top:40px;">
<?php
if(isset($erro)){
print '<div style="width:80%; background:#ff6600; color:#fff; padding: 5px 0px 5px 0px; text-align:center; margin: 0 auto;">'.$erro.'</div>';
}
?>
<table border="0" width="80%" bgcolor="#f0f0f0" style="border:1px solid #ccc; margin:0 auto; position:relative;">
<thead>
<tr>
<th colspan="2">.:: Inserir Evento no Calendário ::.</th>
</tr>
</thead>
<tbody>
<tr>
<td width="20%">Evento:</td>
<td width="auto"><input type="text" name="evento" value="" class="campo" id="evento" /></td>
</tr>
<tr>
<td>Autor:</td>
<td><input name="autor" type="text" class="campo" id="autor" /></td>
</tr>
<tr>
<td>Data Evento:</td>
<td><select name="dia">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
<option>18</option>
<option>19</option>
<option>20</option>
<option>21</option>
<option>22</option>
<option>23</option>
<option>24</option>
<option>25</option>
<option>26</option>
<option>27</option>
<option>28</option>
<option>29</option>
<option>30</option>
<option>31</option>
</select>
<select name="mes" >
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select>
<select name="ano" >
<option>2008</option>
<option>2009</option>
<option>2010</option>
<option>2011</option>
<option>2012</option>
<option>2013</option>
</select> </td>
</tr>
<tr>
<td>Hora:</td>
<td><input name="hora" type="text" class="campo" id="hora">(hh:mm)</td>
</tr>
<tr>
<td>Local:</td>
<td><input name="local" type="text" class="campo" id="local"></td>
</tr>
<tr>
<td valign="top">Descricão:</td>
<td><textarea name="conteudo" rows="8" class="campo" >
</textarea></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Cadastrar Evento" /><input type="hidden" name="done" value="" /></td>
</tr>
</tbody>
</table>
</form>Agora vamos criar a página que vai listar os eventos:
listagenda.php
<style type="text/css">
.cinza{
background:#f0f0f0;
height:20px;
}
.claro{
background:#f9f9f9;
height:20px;
}
.fonte{
color:#FFFFFF;
font-weight:bold;
height:25px;
}
</style>
<div style="margin:10px auto; width:90%; padding:5px 0px 5px 0px;">
<?php
include "sql.php";
$max = 10;
$pagina = $_GET['pagina'];
if(!$pagina){
$inicio = 0;
$pagina = 1;
}else{
$inicio = ($pagina - 1) * $max;
}
$sqln = mysql_query("SELECT * FROM agenda ORDER BY id DESC");
$num = mysql_num_rows($sqln);
if($num == 0){
print "Até o momento não temos nenhum evento agendado";
}else{
$total_paginas = ceil($num/$max);
print "Temos ".$num." eventos cadastrados no site.<br>";
print "Lisando a página ".$pagina." de ".$total_paginas."!";
$sqln = mysql_query("SELECT * FROM agenda ORDER BY id DESC LIMIT ".$inicio.",".$max."");
$num = mysql_num_rows($sqln);
}
?>
</div>
<fieldset style="width:90%; margin:0 auto;">
<legend>Eventos Agendados</legend>
<?php
print '<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="10%" align="center" bgcolor="#202020" class="fonte">.:: Nº ::.</td>
<td align="center" bgcolor="#202020" class="fonte">.:: Nome do Eventos ::.</td>
<td colspan="2" align="center" bgcolor="#202020" class="fonte" width="15%">.:: Ações ::.</td>
</tr>';
for($i = 0; $i < $num; $i++){
$evento = @mysql_result($sqln, $i, "evento");
$id = @mysql_result($sqln, $i, "id");
$n = $i + 1;
$d = $i % 2;
if($d == 0){$cor = "cinza";}else{$cor = "claro"; }
print '<tr class='.$cor.'>';
print '<td align="center">'.$n.'</td>';
print '<td>'.$evento.'</td>';
print '<td align="center"><a href="atualagenda.php?id='.$id.'">Altualizar</a></td>';
print '<td align="center"><a href="deletagenda.php?id='.$id.'">Excluir</a></td>';
print '</tr>';
}
print '</table>';
print '<div style="text-align:center; margin-top: 30px;">';
if($pagina != 1){
print '<a href="listagenda.php?'. $_SERVER['QUERY_STRING']. "&pagina=".($pagina - 1).'"><< anterior</a>';
}else{
print '<span style="color: #ccc;"><< anterior </span>';
}
if ($total_paginas > 1){
for ($i=1; $i <= $total_paginas; $i++){
if ($pagina == $i){
echo "<span class='al'> [".$pagina."] </span>";
}else{
echo "<a href=\"listagenda.php?" . $_SERVER['QUERY_STRING']."&pagina=".$i."\"> ".$i." </a> ";
}
}
}
if($pagina < $total_paginas){
print '<a href="listagenda.php?'. $_SERVER['QUERY_STRING']. "&pagina=".($pagina + 1).'">próxima >></a>';
}else{
print '<span style="color: #ccc;"> próxima >></span>';
}
print '</div>';
?>
</fieldset>
Agora temos que criar uma pagina para atualizar os eventos:
atualagenda.php
<?php
include "sql.php";
if(isset($_POST['done'])){
$id = $_POST['id'];
$evento = $_POST['evento'];
$dtevento = $_POST['dtevento'];
$autor = $_POST['autor'];
$hora = $_POST['hora'];
$local = $_POST['local'];
$conteudo = $_POST['desc'];
if(empty($evento) || empty($dtevento) || empty($conteudo) || empty($local)){
$erro = "Opa, você deve preencher todos os campos";
}else{
$sql = mysql_query("UPDATE agenda SET evento='$evento', dtevento='$dtevento', conteudo='$conteudo', hora='$hora', local='$local', autor='$autor' WHERE id='$id'")or die(mysql_error());
$linha = mysql_affected_rows();
if($linha == 1){
$erro = "Dados alterados com sucesso!";
} else{
$erro = "Não foi possivel alterar os dados";
}
}
}
$id = $_GET['id'];
$sql = mysql_query("SELECT * FROM agenda WHERE id = '$id'");
$evento = @mysql_result($sql, 0, "evento");
$dtevento = @mysql_result($sql, 0, "dtevento");
$hora = @mysql_result($sql, 0, "hora");
$autor = @mysql_result($sql, 0, "autor");
$local = @mysql_result($sql, 0, "local");
$desc = @mysql_result($sql, 0, "conteudo");
$id = @mysql_result($sql, 0, "id");
?>
<style type="text/css">
.campo{
width:400px;
}
</style>
<form name="form1" action="atualagenda.php" method="POST" style="padding-top:40px;">
<?php
if(isset($erro)){
print '<div style="width:80%; background:#ff6600; color:#fff; padding: 5px 0px 5px 0px; text-align:center; margin: 0 auto;">'.$erro.'</div>';
}
?>
<table border="0" width="80%" bgcolor="#f0f0f0" style="border:1px solid #ccc; margin:0 auto; position:relative;">
<thead>
<tr>
<th colspan="2">.:: Atualizar Agenda ::.</th>
</tr>
</thead>
<tbody>
<tr>
<td width="14%">Evento:</td>
<td width="86%"><input type="text" name="evento" value="<?php echo $evento; ?>" class="campo" /></td>
</tr>
<tr>
<td>Data:</td>
<td><input type="text" name="dtevento" value="<?php echo $dtevento; ?>" class="campo"/>
dd-mm-aaaa</td>
</tr>
<tr>
<td>Hora:</td>
<td>
<input type="text" name="hora" value="<?php echo $hora; ?>" class="campo"/>
hh:mm</td>
</tr>
<tr>
<td>Local:</td>
<td><input name="local" type="text" class="campo" id="local" value="<?php echo $local; ?>"></td>
</tr>
<tr>
<td>Autor:</td>
<td><input name="autor" type="text" class="campo" id="autor" value="<?php echo $autor; ?>"></td>
</tr>
<tr>
<td valign="top">Descrição:</td>
<td><textarea name="desc" rows="8" cols="20" class="campo"><?php echo $desc; ?></textarea></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Atualizar Agenda" />
<input type="button" name="button" id="button" onclick="java script:location.href='listagenda.php';" value="Cancelar" />
<input type="hidden" name="done" value="" /><input name="id" type="hidden" value="<?php echo $id; ?>" /></td>
</tr>
</tbody>
</table>
</form>
Agora vamos criar a página para excluir o evento:
deletagenda.php
<?php
include "sql.php";
$id = $_GET['id'];
$sql = mysql_query("SELECT * FROM agenda WHERE id = '$id'");
$linha = mysql_num_rows($sql);
$sql = mysql_query("DELETE FROM agenda WHERE id = '$id'");
if($sql){
header("location:listagenda.php");
}else{
print "Não foi possivel deletar o redado. Tente mais tarde!";
}
?>
Pronto!!! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Espero que a galera faça bom proveito deste calendário!!!
Veja a agenda funcionando: CLIQUE AQUI PARA VER A AGENDA EM AÇÃO
Todos os arquivos para DOWNLOAD
Qualquer dúvida: gaspar.teixeira@gmail.com
Abraço!!!
Discussão (14)
Carregando comentários...