Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Problema esecuzione ciclo

    Buonasera, ho creato un ciclo per stampare tutte le date(giorno, mese e anno) dei giorni che vanno da quello attuale fino ai 14 successivi!

    Premetto dicendo che il ciclo potrebbe anche essere sbagliato, però penso che il problema sia da individuare nella sintassi in quanto all' apertura della pagina *.php, invece che eseguire le varie echo all'interno del ciclo, mi ricopia di pari passo quello che effettivamente è il codice del ciclo.

    Ora vi posto il codice e chiedo gentilmente se qualcuno riesce a trovare il problema:



    $numero_giorno_mese = date("d"); //giorno del mese, 2 cifre senza tralasciare gli zero; i.e. "01" a "31"
    $numero_giorni_mese = date("t"); //numero di giorni del mese dato; i.e. "28" a "31"
    $numero_mese= date("m"); //mese; i.e. "01" a "12"
    $numero_anno = date("Y"); //anno, 4 cifre; i.e. "1999"

    <? php
    if(($numero_giorno_mese + 14) <= $numero_giorni_mese){
    for($i = $numero_giorno_mese ; $i = ($numero_giorno_mese + 14) ; $i++){
    echo "$i/$numero_mese/$numero_anno
    ";}
    }
    else{
    for($i = $numero_giorno_mese ; $i = $numero_giorni_mese ; $i++){
    echo "$i/$numero_mese/$numero_anno
    ";}
    $nuovo_numero_mese=$numero_mese + 1;
    for($i = 1 ; $i = 14 -($numero_giorni_mese - $numero_giorno_mese) ; $i++){
    echo "$i/$nuovo_numero_mese/$numero_anno
    ";}
    }
    ?>
    E questo invece è quello che visualizza nella pagina:

    ";} } else{ for($i = $numero_giorno_mese ; $i = $numero_giorni_mese ; $i++){ echo "$i/$numero_mese/$numero_anno
    ";} $nuovo_numero_mese=$numero_mese + 1; for($i = 1 ; $i = 14 -($numero_giorni_mese - $numero_giorno_mese) ; $i++){ echo "$i/$nuovo_numero_mese/$numero_anno
    ";} } ?>
    Attendo una vostra risposta, grazie




    ps: ho trovato qua e là anche una certa "SELECT sysdate FROM dual" che magari potrebbe essere un'alternativa ma non ho ben capito...

  2. #2
    <? php togli lo spazio tra ? e p.

    metti "<?php" all'inizio dello script prima di "$numero_giorno_mese = date("d"); //giorno del mese, 2 cifre senza tralasciare gli zero; i.e. "01""

    Codice PHP:
    <?php
    $numero_giorno_mese 
    date("d"); //giorno del mese, 2 cifre senza tralasciare gli zero; i.e. "01" a "31"
    $numero_giorni_mese date("t"); //numero di giorni del mese dato; i.e. "28" a "31"
    $numero_mesedate("m"); //mese; i.e. "01" a "12"
    $numero_anno date("Y"); //anno, 4 cifre; i.e. "1999"


    if(($numero_giorno_mese 14) <= $numero_giorni_mese){
    for(
    $i $numero_giorno_mese $i = ($numero_giorno_mese 14) ; $i++){
    echo 
    "$i/$numero_mese/$numero_anno
    "
    ;}
    }
    else{
    for(
    $i $numero_giorno_mese $i $numero_giorni_mese $i++){
    echo 
    "$i/$numero_mese/$numero_anno
    "
    ;}
    $nuovo_numero_mese=$numero_mese 1;
    for(
    $i $i 14 -($numero_giorni_mese $numero_giorno_mese) ; $i++){
    echo 
    "$i/$nuovo_numero_mese/$numero_anno
    "
    ;}
    }
    ?>

  3. #3
    oh chezz, pazzesco, c'era quello spazio lì che rompeva, ora va, grazie mille!!!

    dovrò modificare il ciclo ora perchè mi stampa un 'infinità di giorni senza fermarsi..

  4. #4
    Eccomi di nuovo ragazzi, scrivo ancora qui perchè così evito di postare in altre sezioni e creare doppi post!

    Dopo aver creato e completato ottimamente questo ciclo, volevo chiedervi come posso fare per mettere all' interno di un array i valori che mi stampa con l' echo.
    Non l'ho mai fatto fino ad ora e quindi non so proprio come si fa, anche cercarlo potrei trovare di tutto quindi cerco qualche buon anima che sappia la soluzione in maniera semplice e veloce.

    Grazie


    Codice PHP:
    <?php
    if(($numero_giorno_mese 14) <= $numero_giorni_mese){
          for(
    $i $numero_giorno_mese $i <= ($numero_giorno_mese 14) ; $i++){
          if(
    $i 10){
          echo 
    "0$i/$numero_mese/$numero_anno
    "
    ;}
          else echo 
    "$i/$numero_mese/$numero_anno
    "
    ;}
          }
    else{
          for(
    $i $numero_giorno_mese $i <= $numero_giorni_mese $i++){
          echo 
    "$i/$numero_mese/$numero_anno
    "
    ;}
          
    $nuovo_numero_mese $numero_mese 1;
          if( 
    $nuovo_numero_mese <= 10 ){
          
    $nuovo_numero_mese "0$nuovo_numero_mese";}
          for(
    $i $i <= 14 -($numero_giorni_mese $numero_giorno_mese) ; $i++){
          if(
    $i 10){
          echo 
    "0$i/$nuovo_numero_mese/$numero_anno
    "
    ;}
          else echo 
    "$i/$nuovo_numero_mese/$numero_anno
    "
    ;}
          }
    ?>

  5. #5
    Trovato ragazzi, mi sto praticamente rispondendo da solo però ve lo dico così se mai qualcuno stesse cercando la soluzione può lasciar perdere!

    Il mio obiettivo era quello di creare un' array contenente tutte quelle date per poi inserirle in un menù a tendina.

    Ma cosa c'era di più facile che includere lo stesso ciclo tra la select del form?? niente, ecco quindi la soluzione:

    Codice PHP:

    <form ..........>
    .........
    Data:

    <select name=data>
    <?php
    if(($numero_giorno_mese 14) <= $numero_giorni_mese){
          for(
    $i $numero_giorno_mese $i <= ($numero_giorno_mese 14) ; $i++){
          if(
    $i 10){
          echo 
    "<option>0$i/$numero_mese/$numero_anno</option>";}
          else echo 
    "<option>$i/$numero_mese/$numero_anno</option>";}
          }
    else{
          for(
    $i $numero_giorno_mese $i <= $numero_giorni_mese $i++){
          echo 
    "$i/$numero_mese/$numero_anno
    "
    ;}
          if(
    $numero_mese "12"){
          ((
    $nuovo_numero_mese "1")&&($numero_anno=$numero_anno 1));}
          else 
    $nuovo_numero_mese = ($numero_mese 1);
          if(
    $nuovo_numero_mese <= 10 ){
          
    $nuovo_numero_mese "0$nuovo_numero_mese";}
          for(
    $i $i <= 14 -($numero_giorni_mese $numero_giorno_mese) ; $i++){
          if(
    $i 10){
          echo 
    "<option>0$i/$nuovo_numero_mese/$numero_anno</option>";}
          else echo 
    "<option>$i/$nuovo_numero_mese/$numero_anno</option>";}
          }
    ?>
    </select>
    </form>

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 © 2024 vBulletin Solutions, Inc. All rights reserved.