Visualizzazione dei risultati da 1 a 4 su 4

Discussione: problema calendario

  1. #1

    problema calendario

    ciao a tutti ho creato uno script che genera un calendario e tramite una query ad una tabella t_eventi vede se tot giorno è presente un appuntamento e lo segnala nel calendario.
    il problema sorge quando in un giorno inserisco piu appuntamenti...li si sballa tutto il sistema!

    il codice sql della tabella è il seguente:

    codice:
    CREATE TABLE t_eventi(
     eventoID int not null primary key auto_increment,
     e_data date,
     e_ora TIME,
     e_titolo varchar(150),
     e_descrizione TEXT ,
     e_path VARCHAR(255),
     e_status INT default 0, 
     cod_user_id int not null references t_utenti(userID)
    )TYPE=INNODB;
    mentre il codice php del calendario è il seguente:

    Codice PHP:
    <?

    function casellavuota(){
       echo(
    "<td width=\"25\" align=\"center\" class=\"tab_quarta\">"."&nbsp"."</td>");
    }

    function 
    evento($var){
      include(
    "conn/connect.php");
      
    $today=date("Y-m-d");
      
    $select="SELECT * FROM t_eventi WHERE e_data >= ".$today." ";
      
    $recordset=mysql_query($select);
      if (!
    $recordset){
        echo(
    "Errore!!!!");
      }
      for (
    $w=0$w<=$var;$w++){
         
    $record=mysql_fetch_array($recordset);
      }
      return 
    $record["e_data"];

    }
    //stampa del mese 
    $i date("m");
    switch (
    $i) {
        case 
    '01':
           
    $mese 'Gennaio';
           break;
        case 
    '02':
           
    $mese 'Febbraio';
           break;
        case 
    '03':
           
    $mese 'Marzo';
           break;
        case 
    '04':
           
    $mese 'Aprile';
           break;
        case 
    '05':
           
    $mese 'Maggio';
           break;    
        case 
    '06':
           
    $mese 'Giugno';
           break;
        case 
    '07':
           
    $mese 'Luglio';
           break;
        case 
    '08':
           
    $mese 'Agosto';
           break;
        case 
    '09':
           
    $mese 'Settembre';
           break;
        case 
    '10':
           
    $mese 'Ottobre';
           break;
        case 
    '11':
           
    $mese 'Novembre';
           break;
        case 
    '12':
           
    $mese 'Dicembre';
    }

    //stampa della parte superiore L M M G V S D niente di che 
    echo("<table border=\"0\" width=\"100\">");
    echo(
    "<tr>");
    echo(
    "<td colspan=\"7\">");
    echo(
    "[b]".$mese."[/b]");
    echo(
    date("[b]"." Y"."[/b]"));
    echo(
    "</td>"."</tr>");
    echo(
    "<tr>"."<td  align=\"center\">");
    echo(
    "[b]<font color=\"#FFFFFF\">L</font>[/b]"."</td>");
    echo(
    "<td  align=\"center\" class=\"tabmenu_voce\">"."[b]<font color=\"#FFFFFF\">M</font>[/b]"."</td>");
    echo(
    "<td  align=\"center\" class=\"tabmenu_voce\">"."[b]<font color=\"#FFFFFF\">M</font>[/b]"."</td>");
    echo(
    "<td  align=\"center\" class=\"tabmenu_voce\">"."[b]<font color=\"#FFFFFF\">G</font>[/b]"."</td>");
    echo(
    "<td width=\"25\" align=\"center\" class=\"tabmenu_voce\">"."[b]<font color=\"#FFFFFF\">V</font>[/b]"."</td>");
    echo(
    "<td align=\"center\" class=\"tabmenu_voce\">"."[b]<font color=\"#FFFFFF\">S</font>[/b]"."</td>");
    echo(
    "<td  align=\"center\" class=\"tabmenu_voce\">"."[b]<font color=\"#CC0000\">D</font>[/b]"."</td>"."</tr>");


    $k=date("D"mktime(23,1,0,$i,01,2006));
    switch (
    $k){
        case 
    'Mon':
           
    $cont 0;
           break;
        case 
    'Tue':
           
    $cont 1;
           break;
        case 
    'Wed':
           
    $cont 2;
           break;
        case 
    'Thu':
           
    $cont 3;
           break;
        case 
    'Fri':
           
    $cont 4;
           break;
        case 
    'Sat':
           
    $cont 5;
           break;
        case 
    'Sun':
           
    $cont 6;
           break;
    }
    echo(
    "<tr>");
    for (
    $ind=1$ind<=$cont$ind++){
       
    casellavuota();
    }
    if (
    $i == '02'){
       
    $limit 28;
    }elseif ((
    $i == '01')||($i == '03')||($i == '05')||($i == '07')||($i == '08')||($i == '10')||($i == '12')){
       
    $limit 31;
    }else{
       
    $limit 30;
    }
    $oggi date("d");
    $oggiext=date("Y-m-d");
    $num0;

    //inizio controlli
    for ($j=1$j<=$limit$j++){
      
    $l date("D"mktime(23,1,0,$i,$j,2006));
      
    $event=evento($num);
      
    //se l'evento è uguale al giorno d'oggi me lo stampa
      
    if(($event == date("Y-m-d"mktime(23,1,0,$i,$j,2006)))&&($event == date("Y-m-d"mktime(23,1,0,$i,$j,2006)))&&($oggi== date("d"mktime(23,1,0,$i,$j,2006)))){
       echo(
    "<td align=\"center\" class=\"tab_terza\">"."<a class=\"link_n\" href=\"dettaglioevento.php?data_evento=$event\">[b]".$j."[/b]</a>"."</td>");
       if(
    $l=='Sun'){
       echo(
    "</tr>"."<tr>");
       }
    $num++;
       }
       elseif((
    $l=='Sun')&&($event==date("Y-m-d"mktime(23,1,0,$i,$j,2006)))){
          echo(
    "<td align=\"center\" class=\"tabmenu_intest_cal\">"."<a class=\"link\" href=\"dettaglioevento.php?data_evento=$event\">".$j."</a>"."</td>");
          echo(
    "</tr>"."<tr>");
          
    $num++;
       }
       elseif((
    $l=='Sun')&&($oggi== date("d"mktime(23,1,0,$i,$j,2006)))){
          echo(
    "<td align=\"center\" class=\"tab_terza\">[b]".$j."[/b]</td>");
          if (
    $l=='Sun'){
             echo(
    "</tr>"."<tr>");
          }
       }
       elseif(
    $oggi== date("d"mktime(23,1,0,$i,$j,2006))&&($event == date("Y-m-d"mktime(23,1,0,$i,$j,2006)))){
          echo(
    "<td align=\"center\" class=\"link\">"."<a class=\"link\" href=\"dettaglioevento.php?data_evento=$event\">".$j."</a>"."</td>");
       }
       elseif(
    $l=='Sun'){
          echo(
    "<td align=\"center\" class=\"tabellachiara\">".$j."</td>");
          echo(
    "</tr>"."<tr>");
       }
       
    //stampa di tutti gli altri eventi presenti
       
    elseif($event==date("Y-m-d"mktime(23,1,0,$i,$j,2006))){
          echo(
    "<td align=\"center\" class=\"tabmenu_intest_cal\">"."<a class=\"link\" href=\"dettaglioevento.php?data_evento=$event\">".$j."</a>"."</td>");      
          
    $num++;
       }

       elseif(
    $oggiext == date("Y-m-d"mktime(23,1,0,$i,$j,2006))){
          echo(
    "<td align=\"center\" class=\"tab_terza\">[b]".$j."[/b]</td>");
       }
       elseif(
    $l <> 'Sun'){
          echo(
    "<td align='center' class='tabellachiara'>".$j."</td>");
       }  
    }



    for (
    $ind=1$ind<=$cont-1$ind++){
       
    casellavuota();
    }
    echo(
    "</tr>");
    echo(
    "</table>");
    ?>
    il codice è un pò incasinato...ringrazio chiunque mi aiuti!

  2. #2
    uno alla volta!

  3. #3

  4. #4
    up... interessa anche a me

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.