Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768

    funzine che non vede un array

    ho un problemino molto strano

    definisco un array
    $nomemese = array(1 => "Gennaio","Febbraio","Marzo","Aprile","Maggio","Gi ugno","Luglio","Agosto","Settembre","Ottobre","Nov embre","Dicembre");

    eseguo questo ciclo:
    for ($g=1; $g<13; $g++){ $mese=$nomemese[$g]; echo "<option value=$g>$mese</option>"; }

    e funziona correttamente.(ho omesso la definizione del select)

    se invece faccio così

    function genera() {
    for ($g=1; $g<13; $g++){ $mese=$nomemese[$g]; echo "<option value=$g>$mese</option>"; }
    }

    quindi:
    genera();

    mi esce fuori un select che contiene un elenco di elementi vuoti, cioè non stampa il nome dei mesi. Perchè mi dice che $nomemese è indefinito. Perchè?

  2. #2
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    codice:
    function genera($nomemese)
    ...
    ...
    ...
    genera($nomemese);
    think simple think ringo

  3. #3
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    perchè la funzione non vede nessuna delle variabili che ho impostato all'inizio (fuori da essa)?

    Dovrei rendere le variabili globali? Come posso fare?


    disperato

  4. #4
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    ho capito, ora provo...
    grazie

  5. #5
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    non va...
    ottengo questo:

    Warning: Missing argument 1 for genera()

  6. #6
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    Originariamente inviato da gasmor
    non va...
    ottengo questo:

    Warning: Missing argument 1 for genera()


    controlla quello che ho scritto prima: il parametro va messo sia nella dichiarazione della funzione sia nella sua chiamata...
    think simple think ringo

  7. #7
    devi mettere global $nomemese; nella funzione se vuoi utilizzarlo la dentro ..

  8. #8
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    si, il problema è quello,
    in una chiamata non l'avevo inserito

    grazie

  9. #9
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    per Eyescream

    se faccio come dici tu, quindi, evito di dover dichiarare le variabili nella funzione cioè
    genera(); semplicemente?

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.