Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: calendario eventi

  1. #1

    calendario eventi

    Ragazzi ho questo calendario, funziona bene, devo solo settare ultime cose per gli appuntamenti, ma il problema è che la data funziona bene, ma mi mette il mese di settembre, sia il giorno che la data vanno bene, ma invece di agosto ho settembre, dove sbaglio?

    Codice PHP:
    <?php
    function ShowCalendar($m,$y)
    {
      if ((!isset(
    $_GET['d']))||($_GET['d'] == ""))
      {
        
    $m $m;
        
    $y $y;
      }else{
        
    $m = (int)@strftime"%m" ,(int)$_GET['d']);
        
    $y = (int)@strftime"%Y" ,(int)$_GET['d']);
        
    $m $m;
        
    $y $y;
      }

      
    $precedente = @mktime(000$m -11$y);
      
    $successivo = @mktime(000$m +11$y);

      
    $nomi_mesi = array(
        
    "Gen",
        
    "Feb",
        
    "Mar",
        
    "Apr",
        
    "Mag",
        
    "Giu"
        
    "Lug",
        
    "Ago",
        
    "Set",
        
    "Ott",
        
    "Nov",
        
    "Dic"
      
    );

      
    $nomi_giorni = array(
        
    "Lun",
        
    "Mar",
        
    "Mer",
        
    "Gio",
        
    "Ven",
        
    "Sab",
        
    "Dom"
      
    );

      
    $cols 7;
      
    $days = @date("t",@mktime(000$m1$y)); 
      
    $lunedi= @date("w",@mktime(000$m1$y));
      if(
    $lunedi==0$lunedi 7;

      echo 
    "<table>\n"
      echo 
    "<tr>\n
      <td colspan=\""
    .$cols."\">
      <a href=\"?d=" 
    $precedente "\">&lt;&lt;</a>
      " 
    $nomi_mesi[$m] . " " $y 
      <a href=\"?d=" 
    $successivo "\">&gt;&gt;</a></td></tr>";
      foreach(
    $nomi_giorni as $v)
      {
        echo 
    "<td>[b]".$v."[/b]</td>\n";
      }
      echo 
    "</tr>";

      for(
    $j 1$j<$days+$lunedi$j++)
      {
        if(
    $j%$cols+1==0)
        {
          echo 
    "<tr>\n";
        }

        if(
    $j<$lunedi)
        {
          echo 
    "<td> </td>\n";
        }else{
          
    $day$j-($lunedi-1);
          
    $data = @strtotime(@date($y."-".$m."-".$day));
          
    $oggi = @strtotime(@date("Y-m-d"));
          @include 
    'config.php';
          
    $sql "SELECT str_data FROM ortobotanico";
          
    $result = @mysql_query($sql) or die (mysql_error());
          if(@
    mysql_num_rows($result) > 0)
          {
            while(
    $fetch = @mysql_fetch_array($result))
            {
              
    $str_data $fetch['str_data'];
              
    $prima$fetch['prima'];
              
    $secondo$fetch['secondo'];
              
    $terzo$fetch['terzo'];
              
              if (
    $str_data == $data || $prima =='Completo' || $secondo =='Completo' || $terzo =='Completo')
              {
                
    $day "<a href=\"appuntamenti.php?day=$str_data\">$day</a>";
              }
            }
          }

          if(
    $data != $oggi)
          {
            echo 
    "<td>".$day."</td>";
          }else{
            echo 
    "<td>[b]".$day."[/b]</td>";
          }
        }

        if(
    $j%$cols==0)
        {
          echo 
    "</tr>";
        }
      }
      echo 
    "<tr></tr>";
      echo 
    "</table>";
    }

    @
    mysql_close();
    @
    ShowCalendar(@date("m"),@date("Y")); 
    ?>
    grazie per le risposte in anticipo

  2. #2
    Non ho approfondito ma probabilmente è perchè gli indici degli array partono da 0.
    Prova modificando così l'array dei mesi
    Codice PHP:
    $nomi_mesi = array("",
        
    "Gen",
        
    "Feb",
        
    "Mar",
        
    "Apr",
        
    "Mag",
        
    "Giu",
        
    "Lug",
        
    "Ago",
        
    "Set",
        
    "Ott",
        
    "Nov",
        
    "Dic"
      
    ); 

  3. #3
    Quindi provo a togliere valore zero e provo, grazie , ti faccio sapere subito

  4. #4
    Grazie funziona benissimo, un ultima cosa, allora quando apro la pagina e mi visualizza calendario appaiano solo le virgolette, link, se pigio poi sopra mi scrive il mese. Mentre all'inizio mi porta tutto corretto ma tra le virgolette manca il mese anche se è mese giusto. Come posso fare?

  5. #5
    Non ho capito niente, ci credi?

  6. #6
    allora, quando apro la pagina dove c'è il calendario, c'è il riquadro del calendario, sopra le virgolette per correre da un mese e un altro, ma non appare il nome del mese. Mentre se scorro sulle virgolette per vedere il mese successivo mi appare il nome del mese, è possibile fare in modo che sin dall'inizio mi appaia il nome del mese, tipo adesso dovrebbe apparire "Ago"

  7. #7
    Prova a cambiare l'ultima riga in
    Codice PHP:
    @ShowCalendar(@date("n"),@date("Y")); 

  8. #8
    Grazie funziona tutto ^^

  9. #9
    Scusa ho inserito un evento ma non funziona, o meglio inserisce l'evento, e sul calendario al giorno che ho inserito l'evento dovrebbe essere un link dove, porta ad un altra pagina con la descrizione dell'evento.

    ma sembra che questa parte non funzioni
    Codice PHP:
    $sql "SELECT str_data, prima, seconda, terza FROM ortobotanico";
          
    $result = @mysql_query($sql) or die (mysql_error());
          if(@
    mysql_num_rows($result) > 0)
          {
            while(
    $fetch = @mysql_fetch_array($result))
            {
              
    $str_data $fetch['str_data'];
              
    $prima$fetch['prima'];
              
    $secondo$fetch['secondo'];
              
    $terzo$fetch['terzo'];
              
              if (
    $str_data == $data || $prima == 'Completo' || $seconda == 'Completo' || $terza =='Completo')
              {
                
    $day "[url='javascript:popup(\"appuntamenti.php?day=$str_data\")']$day[/url]"
    Ho provato a togliere if, ma mi linka tutti i giorni, invece a me servirebbe solo che il giorno inserito nel db, corrispondente al giorno sul calendario diventi linkabile. Ho fatto anche un echo della query di sql, sembra funzionare tutto, come risolvo?
    grazie sempre per le risposte


    ho fatto stampare anche echo $data;to
    Nel db io ho questo in str_data
    Codice PHP:
    1706482800 
    Mentre dall'echo $data esce questo:
    Codice PHP:
    12175416001217628000121771440012178008001217887200121797360012180600001218146400121823280012183192001 
    Mentre da echo $str_data esce questo
    Codice PHP:
    1706482800170648280017064828001706482800170648280017064828001706482800170648280017064828001706482800170648280017064828001706482800170648280017064828001706482800170648280017064828001706482800170648280017064828001706482800170648280017064828001706482800170648280017064828001706482800170648280017064828001706482800 

  10. #10
    Ho provato a fare echo data, e dal blocco di numeri che mi dava come risultato , n è ho preso uno e inserito nel db, al posto della data che avevo messo con form di inserimento, e funziona il calendario.

    DUnque non riesco a capire se il form di inserimento nel db che non riporta la data in formato , adatto al calendario o viceversa. Il form è questo qua.

    Codice PHP:
    <?
    if (isset($_POST['submit']) && $_POST['submit']=="invia")
    {
      
    $titolo = @addslashes($_POST['titolo']);
      
    $testo = @addslashes($_POST['testo']);
      
    $prima = @addslashes($_POST['prima']);
      
    $seconda = @addslashes($_POST['seconda']);
      
    $terza = @addslashes($_POST['terza']);
      
    $str_data = @strtotime($_POST['data']);
      @include 
    '../config.php';
      
    $sql "INSERT INTO ortobotanico (titolo,testo,str_data,prima,seconda,terza ) VALUES ('$titolo', '$testo', '$str_data','$prima','$seconda','$terza')";
      if(
    $result = @mysql_query($sql) or die (@mysql_error()))
      {
        echo 
    "Inserimento avvenuto con successo.

        Vai al <a href=\"index.php\">Calendario</a>"
    ;
      }
      @
    mysql_close();
    }else{
      
    ?>
    <form action="<? echo $_SERVER['PHP_SELF']; ?>" method="post">
    Titolo:

    <input name="titolo" type="text">

    Testo:

    <textarea name="testo" cols="30" rows="8"></textarea>

    Data:

    <input name="data" type="text" value="gg-mm-aaaa">

    Fascia oraria 9:00 :

    <select name="prima">
      <option value="Libero">Libero</option>
      <option value="Completo">Completo</option>
    </select>

    Fascia oraria 12:00 :

    <select name="seconda">
      <option value="Libero">Libero</option>
      <option value="Completo">Completo</option>
    </select>

    Fascia oraria 16:00 :

    <select name="terza">
      <option value="Libero">Libero</option>
      <option value="Completo">Completo</option>
    </select>

    <input name="submit" type="submit" value="invia">
    </form>
      <?php
    }
    ?>
    Cosa è che non va? vi ringrazio sempre in anticipo per le risposte

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.