Boa Tarde a todos q passerem por aqui,
Estou fazendo um site para uma escola de dança, e nesse site tera uma parte contendo os horarios de aula de todas as modalidades, soh q estes horarios estão sempre mudando por issu resolvi desenvolver um Backend (não sei se eh assim q chama
Vamos começar, primeiro criei a tabela cadastro com a estrutura abaixo (digam c ela esta correta para esse serviço)
Atualizado 02/12/05
-- cria a tabela de modalidades
Create table modalidade (
idmoda Int NOT NULL AUTO_INCREMENT,
moda Char(35) NOT NULL,
data_cadastro Date,
Primary Key (idmoda));
-- cria a tabela de horarios
CREATE TABLE horario (
id Int NOT NULL AUTO_INCREMENT,
idmoda INT NOT NULL ,
hora Text ,
prof Text ,
nive Text ,
valo Text ,
seg Bool DEFAULT 0 ,
ter Bool DEFAULT 0 ,
qua Bool DEFAULT 0 ,
qui Bool DEFAULT 0 ,
sex Bool DEFAULT 0 ,
sab Bool DEFAULT 0 ,
PRIMARY KEY ( id ));
-- adiciona um index para o campo moda
Alter table horario add Index IX_Relationship1 (idmoda);
-- adiciona uma chave estrangeira na tabela de horarios com referência à tabela de modalidades
Alter table horario add Foreign Key (idmoda) references modalidade (idmoda) on delete restrict on update restrict;
-- insere alguns registros na tabela de modalidade
insert into modalidade (moda, data_cadastro) values ('Flamenco',current_date);
insert into modalidade (moda, data_cadastro) values ('Tec Flamenco',current_date);
insert into modalidade (moda, data_cadastro) values ('Danca do Ventre',current_date);
insert into modalidade (moda, data_cadastro) values ('Danca Cigana',current_date);
insert into modalidade (moda, data_cadastro) values ('Danca de Salao',current_date);
insert into modalidade (moda, data_cadastro) values ('Outras',current_date);
-- insere alguns registros na tabela de horarios
insert into horario (idmoda,seg,ter,qua,qui,sex,sab,hora,prof,nive,valo) values (1,1,0,1,0,0,0,'11:00 as 12:00','Regis','Iniciante','65,00');
insert into horario (idmoda,seg,ter,qua,qui,sex,sab,hora,prof,nive,valo) values (1,0,1,0,1,0,0,'12:00 as 13:00','Kelly','Avançado','95,00');agora o config.php
<?php
/* conecta no banco e seleciona a base de dados */
$cn = mysql_connect ("localhost","root","");
mysql_select_db("cadastro",$cn);
?>
salvar.php eh o arquivo responsavel por inserir no banco
Atualizado 02/12/05
<?php
$sql = sprintf("insert into horario (idmoda,hora,prof,nive,valo,seg,ter,qua,qui,sex,sab)".
"values (%d,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",
$_POST["idmoda"],$_POST["hora"],$_POST["prof"],$_POST["nive"],
$_POST["valo"],$_POST["seg"],$_POST["ter"],$_POST["qua"],$_POST["qui"],
$_POST["sex"],$_POST["sab"]);
/* insere no banco */
mysql_query($sql);
echo "o cadastro foi feito com sucesso<br><a href=c.php>Clique aqui para voltar!</a></br>";
unset($_POST,$_REQUEST);
?>cadastrar.php o formulario de cadastro propriamente dito
Atualizado 02/12/05
<?php
/* pega o arquivo de configuração */
require_once "config.php";
echo '
<tr>
<td width="357" align="center" bgcolor="#FFFFFF"><strong><font color="#FF0000" size="1" face="verdana"><a href="cadastrar.php">Cadastrar</a> <a href="listar.php">Listar</a> <a href="deletar.php">Excluir</a></font></strong></td></br>
</tr></br>';
/* se o cara clicar no botão salvar, chama
o PHP que insere no banco de dados */
if(isset($_POST["acao"]) && $_POST["acao"] == "Salvar") {
require_once "salvar.php";
}
/* função para imprimir o campo do formulário com o valor se tiver na variavel post */
function input ($type, $va, $extra='') {
/* se não for do tipo textarea */
if($type != "textarea") {
/* começa a input */
$input = "<input type='$type' name='$va'";
/* se a variavel post com o mesmo nome do que o campo
estiver setada */
if(isset($_POST[$va])) {
/* coloca na input */
$input .= " value='".$_POST[$va]."'";
}
/* adiciona alguma coisa extra e termina a input */
$input .= " $extra>";
} else {
/* começa a textarea */
$input = "<textarea name='$va' cols='50' rows='5'>";
/* se a variavel post com o mesmo nome do que o campo
estiver setada */
if(isset($_POST[$va])) {
/* coloca o valor na textarea */
$input .= $_POST[$va];
}
/* termina a textarea */
$input .= "</textarea>";
}
/* checa se tem mensagem de erro para este input */
if(isset($_REQUEST[$va."_error"])) {
$input .= "<font color=red>".$_REQUEST[$va."_error"]."</font>";
}
/* retorna a input */
return $input;
}
/* formulario */
$form = "<html>".
"<head><title>Formulário de cadastro</title>".
"<style type='text/css'>".
"td, body, textarea { ".
"font-family: Verdana; font-size: 11px; ".
"background-color: #FFFFFF;".
"}".
"</style>".
"</head>".
"<body>".
"<form action='".$_SERVER["PHP_SELF"]."' method='post' enctype='multipart/form-data' name='cadastro'>".
"<table cellpadding='2' cellspacing='1' bgcolor='#CCCCCC' width='20%'>".
"<tr><td colspan='2'><b>Formulário de cadastro</b></td></tr>".
"<tr><td width='30%' align='right'>Hora:</td><td>".input('text','hora')."</td></tr>".
"<tr><td align='right'>Modalidade:</td><td><select name=idmoda>";
/* pega todos os tipos */
$rs = mysql_query("select * from modalidade order by idmoda asc");
while($row = mysql_fetch_assoc($rs)) {
$form .= "<option value='".$row["idmoda"]."'";
if(isset($_POST["idmoda"]) && $row["idmoda"] == $_POST["idmoda"]) {
$form .= " selected";
}
$form .= ">".$row["moda"]."</option>";
}
/* continuando o formulário */
$form .= "</td></tr>".
"<tr><td align='right'>Professor:</td><td>".input("text","prof")."</td></tr>".
"<tr><td align='right'>Nivel:</td><td>".input("text","nive")."</td></tr>".
"<tr><td align='right'>Valor:</td><td>".input("text","valo")."</td></tr>".
"<tr><td align='right'>Seg:</td><td>". input("checkbox","seg",($_POST["seg"]==1?"checked":"value='1'")). "</td></tr>".
"<tr><td align='right'>Ter:</td><td>". input("checkbox","ter",($_POST["ter"]==1?"checked":"value='1'")). "</td></tr>".
"<tr><td align='right'>Qua:</td><td>". input("checkbox","qua",($_POST["qua"]==1?"checked":"value='1'")). "</td></tr>".
"<tr><td align='right'>Qui:</td><td>". input("checkbox","qui",($_POST["qui"]==1?"checked":"value='1'")). "</td></tr>".
"<tr><td align='right'>Sex:</td><td>". input("checkbox","sex",($_POST["sex"]==1?"checked":"value='1'")). "</td></tr>".
"<tr><td align='right'>Sab:</td><td>". input("checkbox","sab",($_POST["sab"]==1?"checked":"value='1'")). "</td></tr>".
"<tr><td colspan=2 align=center>". input("submit","acao",($_POST["acao"] == ""?"value='Salvar'":""))."</td></tr>".
"</table></form>".
"</body></html>";
/* mostra na tela */
echo $form;
?>agora o formulario de consulta listar.php
Adicionado 02/12/05nesse eu preciso por escolher o tipo de cosulta pela modalidade
<?
include"config.php";
echo '
<tr>
<td width="357" align="center" bgcolor="#FFFFFF"><strong><font color="#FF0000" size="1" face="verdana"><a href="cadastrar.php">Cadastrar</a> <a href="listar.php">Listar</a> <a href="deletar.php">Excluir</a></font></strong></td></br>
</tr></br>';
$y = mysql_query("SELECT * FROM horario");
while($x = mysql_fetch_array($y)){
echo'
</br>
<table width="0%" border="0" cellspacing="1" bgcolor="#339900">
<tr>
<td height="98" valign="top" bgcolor="#FFFFFF"> <table width="400" height="106" border="0" cellspacing="0">
<tr>
<td width="44"><strong><font size="1" face="verdana">Id:</font></strong></td>
<td width="314"><strong><font color="#009900" size="1" face="verdana">'.$x['id'].'</font></strong></td>
</tr>
<tr>
<td width="44"><strong><font size="1" face="verdana">Seg:</font></strong></td>
<td width="314"><strong><font color="#009900" size="1" face="verdana">'.$x['seg'].'</font></strong></td>
</tr>
<tr>
<td width="44"><strong><font size="1" face="verdana">Ter:</font></strong></td>
<td width="314"><strong><font color="#009900" size="1" face="verdana">'.$x['ter'].'</font></strong></td>
</tr>
<tr>
<td width="44"><strong><font size="1" face="verdana">Qua:</font></strong></td>
<td width="314"><strong><font color="#009900" size="1" face="verdana">'.$x['qua'].'</font></strong></td>
</tr>
<tr>
<td width="44"><strong><font size="1" face="verdana">Qui:</font></strong></td>
<td width="314"><strong><font color="#009900" size="1" face="verdana">'.$x['qui'].'</font></strong></td>
</tr>
<tr>
<td width="44"><strong><font size="1" face="verdana">Sex:</font></strong></td>
<td width="314"><strong><font color="#009900" size="1" face="verdana">'.$x['sex'].'</font></strong></td>
</tr>
<tr>
<td width="44"><strong><font size="1" face="verdana">Sab:</font></strong></td>
<td width="314"><strong><font color="#009900" size="1" face="verdana">'.$x['sab'].'</font></strong></td>
</tr>
<tr>
<td width="44"><strong><font size="1" face="verdana">Hora:</font></strong></td>
<td width="314"><strong><font color="#009900" size="1" face="verdana">'.$x['hora'].'</font></strong></td>
</tr>
<tr>
<td width="40"><strong><font size="1" face="verdana">Professor :</font></strong></td>
<td width="300"><strong><font color="#009900" size="1" face="verdana">'.$x['prof'].'</font></strong></td>
</tr>
<tr>
<td width="44"><strong><font size="1" face="verdana">Nivel :</font></strong></td>
<td width="314"><strong><font color="#009900" size="1" face="verdana">'.$x['nive'].'</font></strong></td>
</tr>
<tr>
<td><strong><font size="1" face="verdana">Valor :</font></strong></td>
<td><strong><font color="#009900" size="1" face="verdana">'.$x['valo'].'</font></strong></td>
</tr>
<tr>
<td><strong><font size="1" face="verdana">Modalidade:</font></strong></td>
<td><strong><font color="#009900" size="1" face="verdana">'.$x['idmoda'].'</font></strong></td>
</tr>
</table></td>
</tr>
</table></br>
';
}
?>
tive grandes progressos, consegui fazer o cadastro funcionar legal e inserir todos os dados certinho no DB, abaixo uma imagem da tela de cadastro:

note que eu escolhi a primeira modalidade e os dias Terça e Quinta
essa eh a consulta:

como pode ver ele jogou 1 na terça e na quinta e 0 nos demais dias, e a modalidade ficou 1
soh q oq eu preciso agora eh fazer uma consulta (pondendo escolher por modalidade) e q o resultado venha organizado por (chave 1)dias da semana (chave 2)hora.
deu pra entender???
vou postar como esta atualmente no flash, e eh o q eu pretendo controlar com esse codigo q estamos desenvolvendo.
vou postar como esta atualmente no flash, e eh o q eu pretendo controlar com esse codigo q estamos desenvolvendo.
Assim q ele esta atualmente no flash:

meu objetivo eh controlar isso por PHP+MySQL.
soh q oq eu preciso agora eh fazer uma consulta (pondendo escolher por modalidade) e q o resultado venha organizado por (chave 1)dias da semana (chave 2)hora. issu no PHP mesmo.
deu pra entender???
de acordo com q for resolvendo esse problema eu vou editando o topico.
OBRIGADO A TODOS.
EDIT
Vou colocar os arquivos pra download pra v6 fazerem testes ai
Attached Files
Edição feita por: pisikpatha, 02/12/2005, 11:50.












