Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    75

    calendario per inserire data mysql

    ho creato uno scadenziario in php ed un pagina di amministrazione per inserire data (in formato yyyy-mm-dd) e testo della scadenza..vorrei sapere dove posso trovare una calendario tipo quello di phpmyadmin per rendere più facile l'inserimento della data.
    Grazie a tutti

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    75

    però....ma no è quello che cercavo..

    grazie, interessantissimo, però non è esattamente quello che cercavo...
    vorrei qualcosa di mooolto più semplice, un box piccolino dove scegliere il giorno del mese e fare "stampare" del campo form la data in formato yyyy-mm-dd
    grazie comunque (sono sicuro che mi servirà per il futuro il sito che mi hai indicato)

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    75

    forse da phpmyadmin

    io non ho capito come fare..ma forse è possibile estrapolarlo proprio dalla gui con cui amministro mysql (che ha esattamente il calendario come dico io per immettere le date)..qualcuno lo ha già fatto?

  5. #5
    dunque, non so se ho ben capito ciò di cui hai bisogno. Io avevo scaricato un semplicissimo calendario da freephp e l'avevo adattato alle mie esigenze, in modo da permettere la navigazione tra i vari mesi ed anni. E selezionando una data questa veniva copiata in un campo di testo che usavo poi per l'inserimento in mySQL, non so se può esserti utile una cosa del genere. Fammi sapere, che magari te la passo.

    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  6. #6
    ma lo vuoi in php o in js?

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    75
    grazie Manuel, voglio proprio quello!! hai capito perfettamente, un calendario che permetta l'inserimento in un campo di testo della data navigando tra i mesi ed i giorni e cliccando sul giorno prescelto... prova a mandarmelo o a darmi un link di esempio..

    In js o php penso sia la stessa cosa..l'importante è che alla fine l'utente non debba scrivere la data, ma solo clicare sul giorno ed il campo si deve riempire con la data (posssibilmente in formato mysql)

    io vi ringrazio a tutti e spero di essermi spiegato un pò meglio..
    Ciao

  8. #8
    Dunque, il calendario che ho io è un misto tra php e js. phpperché è tramite quello che crei il calendario, e js perché è tramite quello che selezionando una data ti si chiude l'esploso con il calendario e ti riempie il campo di testo.
    Dunque, ti posto addirittura tutto il codice che uso io, non devi far altro che incollarlo da qualche parte e salvarlo.

    Questo è lo script completo del calendario [per come è strutturato lo script fai in modo che il solo calendario si apra in popup]

    codice:
    <link href="up.css" rel="stylesheet" type="text/css">
    <script language="Javascript">
    function Selezionato(data)
    {
    	window.opener.document.form1.data.value = data;
    	window.close();
    }
    </script>
    
    <?
    //----------------- This function is to do the HTML header chore ---------------------
    
    function print_HTML_header()
    {
    	global $flag;
    	/*	echo "Mese: ".$_GET['month'];	
    	echo "
    Anno: ".$_GET['year'];	*/
    	$flag = (isset($_GET['month']) && ($_GET['month'] <> date("n") || $_GET['year'] <> date("Y"))) ? 1 : 0;
    	
    	echo 	"<HTML>\n<HEAD>\n<STYLE>\n".
    			 "\n</STYLE>".
    			 "<TITLE>Calendario\n</TITLE>\n</HEAD>\n<BODY BACKGROUND='images/bg.gif'>\n\n".
    			 "<P ALIGN='center' CLASS='content'>Seleziona la data in cui pubblicare la news:</P>";
    }
    	
    
    //----------------- Funzione per la chiusura dei tag HTML -----------------//
    
    function  print_HTML_footer()
    {
    	echo "</BODY></HTML>";
    }
    
    //----------------- Funzione che stampa il calendario -----------------//
    
    function  print_calendar($mon,$year)
    	{
    		global $dates, $first_day, $start_day, $flag;
    		
    		$first_day = mktime(0,0,0,$mon,1,$year);
    		$start_day = date("w",$first_day);
    		$res = getdate($first_day);
    		$month_name = $res["month"];
    		$no_days_in_month = date("t", $first_day);	// t -> numero dei giorno del mese
    		
    		//Controllo se il primo giorno del mese è una Domenica altrimenti riempio di spazi fino ad arrivare al primo giorno
    		for ($i = 1; $i <= $start_day;$i++)
    			$dates[1][$i] = " ";
    
    		$row = 1;
    		$col = $start_day + 1;
    		$num = 1;	//contatore dei giorni del mese
    		while($num <= 31){
    			if ($num > $no_days_in_month)	break;	//se non ci sono più giorni nel mese esco da ciclo
    			else{
    				$dates[$row][$col] = $num;
    				if (($col + 1) > 7){	//se sono arrivato alla fine della settimana devo scendere di una riga
    					$row += 1;
    					$col = 1;
    				}else
    					$col += 1;
    				$num += 1; 
    			}//fine if-else
    		}//fine while
    
    		$mon_num = date("n",$first_day);	//calcolo del numero del mese -> n = senza eventuali 0
    		$temp_yr = $next_yr = $prev_yr = $year;	//imposto l'anno di visualizzazione
    
    		$prev = $mon_num - 1;
    		$next = $mon_num + 1;
    
    		//Se Gennaio è il mese corrente imposto il mese precedente a Dicembre dell'anno precedente
    		if ($mon_num == 1){
    			$prev_yr = $year - 1;
    			$prev = 12;
    		}
        
    		//Se il dicembre è il mese corrente imposto il mese successivo a Gennaio dell'anno successivo
    		if ($mon_num == 12){
    			$next_yr = $year + 1;
    			$next = 1;
    		}
    
    		echo "<DIV ALIGN='center'><TABLE BORDER=0 WIDTH=350 CELLSPACING=0";
    
    
    		//trasformo i mesi dal formato standard a quello italiano		
    		if (date("F", $first_day) == 'January')			{	$mese = 'Gennaio';		$n = '01';	}
    		elseif (date("F", $first_day) == 'February')	{	$mese = 'Febbraio';		$n = '02';	}
    		elseif (date("F", $first_day) == 'March')		{	$mese = 'Marzo';		$n = '03';	}
    		elseif (date("F", $first_day) == 'April')		{	$mese = 'Aprile';		$n = '04';	}
    		elseif (date("F", $first_day) == 'May')			{	$mese = 'Maggio';		$n = '05';	}
    		elseif (date("F", $first_day) == 'June')		{	$mese = 'Giugno';		$n = '06';	}
    		elseif (date("F", $first_day) == 'July')		{	$mese = 'Luglio';		$n = '07';	}
    		elseif (date("F", $first_day) == 'August')		{	$mese = 'Agosto';		$n = '08';	}
    		elseif (date("F", $first_day) == 'September')	{	$mese = 'Settembre';	$n = '09';	}
    		elseif (date("F", $first_day) == 'October')		{	$mese = 'Ottobre';		$n = '10';	}
    		elseif (date("F", $first_day) == 'November')	{	$mese = 'Novembre';		$n = '11';	}
    		elseif (date("F", $first_day) == 'December')	{	$mese = 'Dicembre';		$n = '12';	}
    
    		//imposto le variabili per navigare negli anni
    		$anno_dopo = $year + 1;
    		$anno_prima = $year - 1;
    		
    		//ricevo da GET la variabile contenente il mese in visualizzazione
    		$month = $_GET['month'];
    		if ($month == ''){	$month = date("n");	}
    		
    		echo 	"\n<TR ALIGN='center'><TD BGCOLOR='#4682B4' ALIGN='left' CLASS='titoli'> ".
    			 "<img src=\"images/prev_month.gif\" border=0 title=\"Mese precedente\"> </TD>".
    			 "<TD COLSPAN=5 BGCOLOR='#4682B4' ALIGN='center' CLASS='corrente'>".$mese." ".$temp_yr."</TD>".
    			 "<TD BGCOLOR='#4682B4' ALIGN='right' CLASS='titoli'> ".
    			 "<img src=\"images/next_month.gif\" border=0 title=\"Mese Successivo\">  </TD></TR>";
    
    		echo "\n<TR ALIGN='center' CLASS='content'><TD CLASS='content' BGCOLOR=\"#87CEFA\">Dom</TD><TD CLASS='content' BGCOLOR=\"#87CEFA\">Lun</TD><TD CLASS='content' BGCOLOR=\"#87CEFA\">Mar</TD>";
    		echo "<TD CLASS='content' BGCOLOR=\"#87CEFA\">Mer</TD><TD CLASS='content' BGCOLOR=\"#87CEFA\">Gio</TD><TD CLASS='content' BGCOLOR=\"#87CEFA\">Ven</TD><TD CLASS='content' BGCOLOR=\"#87CEFA\">Sab</TD></TR>";
    		echo "<TR><TD COLSPAN=7> </TR><TR ALIGN='center'>";
    				
    		$end = ($start_day > 4)? 6:5;
    		//ciclo che mi scrive i giorni!!
    		for ($row = 1; $row <= $end; $row++){
    			for ($col = 1; $col <= 7; $col++){
    				if ($dates[$row][$col] == '')	$dates[$row][$col] = ' ';
    						
    				if (!strcmp($dates[$row][$col], ' '))	$count += 1;
    						
    				$t = $dates[$row][$col];	
    				$var = $t.'/'.$mon.'/'.$year; 
    						
    				//Controllo se la data è oggi la evidenzio
    				if (($t == date("j")) && ($mon == date("n")) && ($year == date("Y"))){
    					echo "\n<TD CLASS='corrente' BGCOLOR=\"#4682B4\">";
    					echo "<a href=\"javascript:Selezionato('$var')\" TITLE=\"$var\">";
    					echo $t."</a></TD>";
    				}else{	//Se il giorno non c'è metto uno spazio
    							echo "\n<TD  CLASS='titoli' BGCOLOR=\"#87CEFA\">".(($t == " " )? "" :"<a href=\"javascript:Selezionato('$var')\" TITLE=\"$var\">".$t)."</a></TD>";
    						}
    					}//fine for -colonne
    				
    				if (($row + 1) != ($end+1))
    					echo "</TR>\n<TR ALIGN='center'>";
    				else
    					echo "</TR>";
    			}//fine for - righe
    					echo "<TR><TD ALIGN=\"left\" BGCOLOR=\"#4682B4\"><a href=\"phpcalendar.php?month=$month&year=$anno_prima\" title=\"Anno precedente\"><img src=\"images/prev_year.gif\" border=0 title=\"Anno precedente\"></a></TD><TD COLSPAN=5 BGCOLOR=\"#4682B4\"></TD><TD ALIGN=\"right\" BGCOLOR=\"#4682B4\"><a href=\"phpcalendar.php?month=$month&year=$anno_dopo\" title=\"Anno Successivo\"><img src=\"images/next_year.gif\" border=0 title=\"Anno successivo\"></a></TD></TR>";
    		
    		echo "\n</TABLE>
    
    ";
    		if ($flag == '1')	echo "<A HREF=\"phpcalendar.php\" CLASS=\"content\">Visualizza il mese corrente</A></DIV>";
    		
    
    	}
    	
    //----------Main Loop-----------
    
    
    //Se il mese non è presente lo setto a quello corrente
    $month = (empty($month)) ? date("n") : $month;
    
    //Se l'anno non è presente lo setto a quello corrente
    $year = (empty($year)) ? date("Y") : $year;
    
    print_HTML_header();
    
    print_calendar($month,$year);
    
    print_HTML_footer();
    
    ?>
    Ci sono delle cose che tu non vedrai nel tuo calendario, tipo le immagini e le formattazioni dei testi con i css come le ho io. Se non sbaglio però ti servono solo un paio di classi css:
    codice:
    .content {font-family: Verdana; font-size: 9pt; color: #000000; text-decoration: none;} 
    .content a {font-family: Verdana; font-size: 9pt; color: #0000CC; text-decoration: none;} 
    .content a:hover {font-family: Verdana; font-size: 9pt; color: #0000FF; text-decoration: none;}
    .corrente {font-family: Verdana; font-size: 12pt; color: #FFFFFF; text-decoration: none;}
    .corrente a {font-family: Verdana; font-size: 12pt; color: #FFFFFF; text-decoration: none;}
    .corrente a:hover {font-family: Verdana; font-size: 12pt; color: #FFFFFF; text-decoration: none;}
    Mettile al posto della mia prima riga racchiuse tra i tag <style></style>, e dagli le proprietà che preferisci.
    Per le immagini, scarica quelle che vuoi, non sono importanti

    La funzione js che vedi è quella che ti permette di chiudere la popup con il calendario e di riempire il campo data. Te la riporto qui sotto e te la spiego:
    codice:
    function Selezionato(data)
    {
    	window.opener.document.form1.data.value = data;
    	window.close();
    }
    </script>
    Questa funzione ti setta il campo data presente nella form [che ha come nome form1] della opener [che è la pagina da cui hai aperto il tuo calendarietto] con la data selezionata. Io la riempio direttamente con la data in formato italiano, vedi tu se vuoi mantenerlo o cambiarlo, a tua discrezione
    Abbi l'accortezza di cambiare i nomi dei campi, form compreso, e di settarli come i tuoi, altrimenti non funziona.

    Giusto per finire ti posto anche il link con cui dovrai aprire il calendario.
    Nella pagina con la form metti, magari in parte al campo che conterrà la data, questo link:
    codice:
    Calendario
    La funzione openPop è un altro js e ti apre il calendario in una finestrella di dimensioni predefinite. Metti la funzione nella pagina in cui hai il form:

    codice:
    <script type="text/javascript">
    function openPop(theURL,winName,features) { //1.0
      window.open(theURL,winName,features);
    }
    </script>
    Detto questo penso di averti detto e spiegato tutto. Se hai problemi posta pure.

    Buon lavoro!
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  9. #9
    Utente di HTML.it L'avatar di maxtn
    Registrato dal
    Jul 2002
    Messaggi
    712
    Qualcuno sa dirmi come mai non mi va avanti/indietro con i mesi e gli anni?
    Grazie
    Ubuntu 10.10 x86_64

  10. #10
    Utente di HTML.it L'avatar di maxtn
    Registrato dal
    Jul 2002
    Messaggi
    712
    up
    Ubuntu 10.10 x86_64

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.