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.