Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 

Calendário  #resolvido

15-07-2007 00:01

Achei um script PHP que forma um calendário... Ele funciona através de uma comando de uma página que o chama e ele aparece como uma nova janela... Seguem os códigos:

Test.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Untitled</title> <script language="JavaScript1.3"> // ************************* Programmed by sOul- ************ // setDateToday to some element; // Use: writeToday (formName,elementName); //*********************************************************** function writeToday(formName, elementName, nextElement){ var tmpObj = eval("document." +formName+ "." +elementName); if (tmpObj.value == "") { var today = new Date(); var tmpDay = String(today.getDate()); var tmpMonth = String(today.getMonth()+ 1); var tmpYear = String(today.getFullYear()); tmpDay = ((tmpDay.length==1)? '0':'') + String(tmpDay); tmpMonth = ((tmpMonth.length==1)? '0':'') + String(tmpMonth); var tmpDate = tmpDay + tmpMonth + tmpYear; tmpObj.value = tmpDate; } else { return; } } //************************* Programmed by sOul- ************ // isNumber -> USE: // NewWindow ( // myPage (string url) // myName (string titel) // Width (integer breedte) // Height (integer hoogte) // Scroll (yes/no) // Resizable (yes/no) // ); //********************************************************** function NewWindow(myPage, myName, Width, Height, Scroll, Resizable) { var winTop = ((screen.height - Height) / 2); var winLeft= ((screen.width - Width) / 2); winProps = 'top=' +winTop+ ', left=' +winLeft+ ', height=' +Height+ ', width=' +Width+ ', Scrollbars=' +Scroll+ ', Resizable=' +Resizable+ ';' Win = window.open(myPage, myName, winProps); if (parseInt(navigator.appVersion) >= 4) { Win.window.focus(); //set focus to the window } } </script> </head> <body onLoad="writeToday('frmInput','dateIndienst','strContract');" Onunload="CloseCalandar();"> <form name="frmInput"> <input type="text" id="dateIndienst" name="dateIndienst" maxLength=8 style="width:'100';" onclick="NewWindow('calendar.php?frmName=frmInput&fieldName=dateIndienst&nextFieldName=dateUitdienst', 'Datum', '229','205', 'noscrollbars', 'yes', 'noresize');" > <br> <input type="text" id="dateUitdienst" name="dateUitdienst" maxLength=8 style="width:'100';" onclick="NewWindow('calendar.php?frmName=frmInput&fieldName=dateUitdienst&nextFieldName=','Datum', '229', '205', 'noscrollbars', 'yes', 'noresize');" > </form> </body> </html> <script language="JavaScript"> function CloseCalandar() { try { Win.close(); } catch(e) {} } </script>

Calendar.php
<html> <head> <link rel="stylesheet" href="calender.css"> </head> <body topmargin="5" leftmargin="5"> <script language=javascript> var minYear = 1950; var maxYear = 2050; var minMonth = 0; var maxMonth = 11; function formatDate(argDate) { var tmpYear = String(argDate.getFullYear()); var tmpMonth = String(argDate.getMonth()+1); var tmpDate = String(argDate.getDate()); tmpDate = ((tmpDate.length==1)? '0':'') + String(tmpDate); tmpMonth = ((tmpMonth.length==1)? '0':'') + String(tmpMonth); return(tmpDate + tmpMonth + tmpYear); } function getDayLabel(argNum) { switch(argNum) { case 0: return('Dom'); case 1: return('Seg'); case 2: return('Ter'); case 3: return('Qua'); case 4: return('Qui'); case 5: return('Sex'); case 6: return('Sab'); } } function getMonthLabel(argNum) { switch(argNum) { case 0: return('Janeiro'); case 1: return('Fevereiro'); case 2: return('Março'); case 3: return('Abril'); case 4: return('Maio'); case 5: return('Junho'); case 6: return('Julho'); case 7: return('Agosto'); case 8: return('Setembro'); case 9: return('Outubro'); case 10: return('Novembro'); case 11: return('Dezembro'); } } today = new Date(); useMonth = today.getMonth(); useYear = today.getFullYear(); hT = ''; hT+= '<table><tr><td><select id="selMonth" class="selSelect" onchange="useMonth=this.value;writeDate();">'; for (var i=minMonth; i<=maxMonth; i++) hT+= '<option value="' + i + '" ' + ((i==useMonth)?'SELECTED':'') + '>' + getMonthLabel(i) + '</option>'; hT+= '</select></td>'; hT+= '<td align=right><select id="selYear" class="selSelect" onchange="useYear=this.value;writeDate();">'; for (var i=minYear; i<=maxYear; i++) hT+= '<option value="' + i + '" ' + ((i==useYear)?'SELECTED':'') + '>' + i + '</option>'; hT+= '</select></td></tr>'; hT+= '<tr><td colspan=2><div id="calendar" style="width: "></div></td></tr>'; hT+= '<tr><td colspan=2>'; hT+= '<table class="scrollMenu" cellpadding=0 cellspacing=0 border=0 width=100%>'; hT+= '<tr>'; hT+= '<td align=center width=15%><div onclick="showPrevYear()"><<</div></td>'; hT+= '<td align=center width=15%><div onclick="showPrevMonth()"><</div></td>'; hT+= '<td align=center><div onclick="showToday()">alternar</dvi></td>'; hT+= '<td align=center width=15%><div onclick="showNextMonth()">></div></td>'; hT+= '<td align=center width=15%><div onclick="showNextYear()">>></div></td>'; hT+= '</tr>'; hT+= '</table>'; hT+= '</td></tr>'; hT+= '</table>'; document.write(hT); function setSelected(argSelBoxRef, argValue) { for (var z=0; z<argSelBoxRef.options.length; z++) argSelBoxRef.options[z].selected = (argSelBoxRef.options[z].value == argValue); } function showPrevYear() { var yearSel = document.getElementById('selYear'); useMonth = document.getElementById('selMonth').value; useYear = yearSel.value; useYear--; if (useYear < minYear) useYear = maxYear; setSelected(yearSel, useYear); writeDate(); } function showNextYear() { var yearSel = document.getElementById('selYear'); useMonth = document.getElementById('selMonth').value; useYear = yearSel.value; useYear++; if (useYear > maxYear) useYear = minYear; setSelected(yearSel, useYear); writeDate(); } function showPrevMonth() { var monthSel = document.getElementById('selMonth'); useYear = document.getElementById('selYear').value; useMonth = monthSel.value; useMonth--; if (useMonth < minMonth) { showPrevYear(); useMonth = maxMonth; } setSelected(monthSel, useMonth); writeDate(); } function showNextMonth() { var monthSel = document.getElementById('selMonth'); useYear = document.getElementById('selYear').value; useMonth = monthSel.value; useMonth++; if (useMonth > maxMonth) { showNextYear(); useMonth = minMonth; } setSelected(monthSel, useMonth); writeDate(); } function showToday() { var monthSel = document.getElementById('selMonth'); var yearSel = document.getElementById('selYear'); useMonth = today.getMonth(); useYear = today.getFullYear(); setSelected(monthSel, useMonth); setSelected(yearSel, useYear); writeDate(); } function writeDate() { var tdextra=''; var stylecls=''; var oneDay = 86400000; var countDate = new Date( useYear, useMonth, 1); countDate = new Date( countDate.valueOf() - ( countDate.getDay() * oneDay) ); hT = ''; hT+= '<table border=0>'; for (var r=0; r<7; r++) { hT += '<tr>'; for (var c=0; c<7; c++) { if (r==0) { tdextra = 'class="weekDays" align="center"'; cell = getDayLabel(c); } else { if (countDate.getMonth() == useMonth ) stylecls = ( ((countDate.getDate() == today.getDate() ) && (countDate.getFullYear() == today.getFullYear() ) && (countDate.getMonth() == today.getMonth() ) )? 'rightday' : 'rightmonth' ); else stylecls = 'wrongmonth'; cell = '&nbsp;' + countDate.getDate() + '&nbsp;'; tdextra = 'class="' + stylecls + '" onclick="sendData(\'' + formatDate(countDate) + '\');" align=right'; } hT += '<td ' + tdextra + '>' + cell + '</td>'; if (r!=0) countDate = new Date(countDate.valueOf() + oneDay ); } hT += '</tr>'; } hT+= '</table>'; document.getElementById('calendar').innerHTML = hT; } writeDate(); function sendData(mdate) { opener.document.<?echo $frmName?>.<?echo $fieldName?>.value = mdate; <? if ($nextFieldName != null) { $tmpString = "opener.document."; $tmpString .= $frmName; $tmpString .= "."; $tmpString .= $nextFieldName; $tmpString .= ".focus();"; echo $tmpString; }?> self.close(); } </script> </body> </html>

caleder.css
body { font-family: verdana,arial; background-color:#003366; } a { font-size : 10px; text-decoration: none; } .rightday { color: White; background-color: #FF6600; font-size : 12px; cursor: pointer; cursor:hand; } .rightmonth { color: black; background-color: Beige; font-size : 12px; cursor: pointer; cursor:hand; border : 1px ridge White; } .weekDays { color: white; font-size : 12px; background-color: #003366; } .wrongmonth { font-size : 12px; color: gray; background-color: Silver; cursor: pointer; cursor:hand; } div { font-size : 10px; cursor: pointer; cursor: hand; background-color :#FFCC00; } FORM SELECT.selSelect { font-family: verdana,arial; font-size : 10px; } .scrollMenu { font-size : 12px; color: black; background-color: #003366; cursor: pointer; cursor:hand; border : 1px double White; }

Eu queria fazer com que o calendário pode-se ser visto diretamente na página, ou seja queria que não fosse preciso clicar no link que existe no arquivo "Test.php"...
0
 

Calendário

15-07-2007 00:04

Eu tentei de varias maneiras fazer com que o calendário pode-se ser visto diretamente na página, mas infelizmente não tive sucesso, se alguém puder me ajudar quanto a isso agradeço desde já...
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17639
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Calendário

15-07-2007 07:52

Precisa de um código simples de calendário, só para ver as datas do mês atual?
0
A melhor hospedagem para o seu site HostGator!
 

Calendário

15-07-2007 08:24

É, pode ser... A real intenção era essa...
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17639
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Calendário

15-07-2007 09:07

Abaixo segue o código de calendário
<?php if (empty($mes)) { $mes = date("m"); $ano = date(Y); } switch($mes){ case "01" : $mesext = "Janeiro"; break; case "02" : $mesext = "Fevereiro"; break; case "03" : $mesext = "Março"; break; case "04" : $mesext = "Abril"; break; case "05" : $mesext = "Maio"; break; case "06" : $mesext = "Junho"; break; case "07" : $mesext = "Julho"; break; case "08" : $mesext = "Agosto"; break; case "09" : $mesext = "Setembro"; break; case "10" : $mesext = "Outubro"; break; case "11" : $mesext = "Novembro"; break; case "12" : $mesext = "Dezembro"; break; } $next = mktime(0,0,0,$mes + 1,1,$ano); $nextano = date("Y",$next); $nextmes = date("m",$next); $prev = mktime(0,0,0,$mes - 1,1,$ano); $prevano = date("Y",$prev); $prevmes = date("m",$prev); $d = mktime(0,0,0,$mes,1,$ano); $diaSem = date('w',$d); ?> <table width="245" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td width="35" align="center"><a href="?mes=<? echo $prevmes; ?>&ano=<? echo $prevano; ?>">--</a></td> <td colspan="5" align="center"><? echo $mesext." / ". $ano?></div></td> <td width="35" align="center"><a href="?mes=<? echo $nextmes; ?>&ano=<? echo $nextano; ?>">++</a></td> </tr> <tr> <td width="35" align="center">Dom</td> <td width="35" align="center">Seg</td> <td width="35" align="center">Ter</td> <td width="35" align="center">Qua</td> <td width="35" align="center">Qui</td> <td width="35" align="center">Sex</td> <td width="35" align="center">Sábado</td> </tr> <?php echo "<tr>"; for($i = 0; $i < $diaSem; $i++){ echo "<td width=35>&nbsp;</td>"; } for($i = 2; $i < 33; $i++){ $linha = date('d',$d); if($i > 3) { } echo "<td align='center'><a href=?data=".$linha."/".$mes."/".$ano.">".$linha."</a></td>"; if (date('w',$d) == 6){ echo "</tr>"; } $d = mktime(0,0,0,$mes ,$i, $ano); if(date('d',$d) == "01") { break; } } ?> <tr> <td width="35">&nbsp;</td> <td width="35">&nbsp;</td> <td width="35">&nbsp;</td> <td width="35">&nbsp;</td> <td width="35">&nbsp;</td> <td width="35">&nbsp;</td> <td width="35">&nbsp;</td> </tr> </table>

0
A melhor hospedagem para o seu site HostGator!
 

Calendário

15-07-2007 09:38

Fiz umas modificações e ficou como eu estava querendo... Muito obrigado...
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17639
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Calendário

15-07-2007 13:37

:)
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Bing [Bot]