Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 19 su 19
  1. #11
    Confermo questo:

    [list=1][*]la funzione funziona correttamente,[*]I dati vengono correttamente passati alla funzione (infatti se faccio un echo dentro la funzione sia dei dati passati che del risultato è quello corretto...)[*]il return $variabile non restituisce nulla...[*]altre funzioni simili nella struttura (cambia l'espressione interna) funzionano correttamente!![/list=1]

    come posso fare per controllare dove stà l'errore, la pagina passa circa 100 dati POST... e se li stampo sono tutti corretti.
    Ciao!

  2. #12
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372

    Re: [PHP] Funzione che non funziona...

    Originariamente inviato da fmortara
    Salve a tutti!!

    ho scritto questa funzione:
    Codice PHP:
    // controllo i valori composti ca campo massimo e minimo
        
    function min_max($var_1$var_2$word) {

            echo 
    'var1 = '.$var_1.'
    var2 = '
    .$var_2// RIGA AGGIUNTA DOPO
            
    if($var_1 != "" && $var_2 != "") {

                    
    // controllo se min è inferiore a max
                    
    if($var_1 $var_2) {
                        
    $min_max $var_1." - ".$var_2;
                    } elseif (
    $var_1 >= $var_2) {
                        
    errore_back("[b]$word:[/b]

                                    Il valore minimo deve essere inferiore al valore massimo"
    );
                    } 
    //end if
            
    } else {
                
    $min_max "Valori non arrivati entrambi";
            } 
    // end if
        
    echo '
    min_max = '
    .$min_max// RIGA AGGIUNTA DOPO
        
    return $min_max;
        } 
    ma non mi restituisce il valore della variabile e mi compare un Notice di variabile non assegnata.

    la riga aggiunta dopo, mi stampa il valore corretto della variabile $minmax

    la funzione la richiamo così:
    Codice PHP:
    min_max($min,$max,$nomecampo); 
    e se stampo i valori delle variabili $min e $max, questi sono corretti, in più se inserisco il valore $min maggiore del valore di $max ottengo correttamente il messaggio di errore.

    dove sbaglio??
    Hai provato ad inizializzare la variabile $min_max subito dopo la definizione della funzione ?

    Cosa fa error_back ? In tutti i casi se error_back viene richiamata $min_max non è settata.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #13
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    la tua funzione funziona.

    Se qualcosa non va vuol dire che non è come l'hai scritto qui

  4. #14
    ovviamente la funzione è corretta...

    ho creato una pagina che invia solo i due dati alla funzione e li stampa a video, e funziona...

    se invece uso la pagina che sto creando per il sito web, non funziona anche se i dati post sono correttamente inviati (e stampati a video...)...

    Ciao!

  5. #15
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Allora in questo contesto, ottengo il famoso messaggio. Ho estrapolato la funzione errore_back

    codice:
    function errore_back($pippo) {
     print $pippo;
    }
    
    // controllo i valori composti ca campo massimo e minimo 
        function min_max($var_1, $var_2, $word) { 
    
            echo 'var1 = '.$var_1.'
    var2 = '.$var_2; // RIGA AGGIUNTA DOPO 
            if($var_1 != "" && $var_2 != "") { 
    
                    // controllo se min è inferiore a max 
                    if($var_1 < $var_2) { 
                        $min_max = $var_1." - ".$var_2; 
                    } elseif ($var_1 >= $var_2) { 
                        errore_back("$word:
    Il valore minimo deve essere inferiore al valore massimo"); 
                    } //end if 
            } else { 
                $min_max = "Valori non arrivati entrambi"; 
            } // end if 
        echo '
    min_max = '.$min_max; // RIGA AGGIUNTA DOPO 
        return $min_max; 
        }
    
     ?>
    <? print min_max(24,23,"pippo") ?>
    Messaggio :

    codice:
    var1 = 24
    var2 = 23pippo:
    Il valore minimo deve essere inferiore al valore massimo
    Notice: Undefined variable: min_max in c:\program files\easyphp\www\tests\test2244.php on line 28
    
    min_max = 
    Notice: Undefined variable: min_max in c:\program files\easyphp\www\tests\test2244.php on line 29
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  6. #16
    e se invece fai:

    codice:
    <? print min_max(23,24,"pippo") ?>
    cosa ottieni??
    Ciao!

  7. #17
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Originariamente inviato da fmortara
    e se invece fai:

    codice:
    <? print min_max(23,24,"pippo") ?>
    cosa ottieni??
    codice:
    var1 = 23
    var2 = 24
    min_max = 23 - 2423 - 24
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  8. #18
    salve...

    allora, adesso si vedono nella pagina che elabora i dati tutti i valori inviati alla pagina...

    la coppia di valori interessata è questa: campo_pot_utile_min, campo_pot_utile_max, che come possiamo vedere arriva correttamente...

    tra le righe dentro la funzione e Fine funzione possiamo vedere anche come i valori vengono interpretati dalla funzione, vengono infatti prima stampati singolarmente (var min e max) e poi come risultato della funzione (Risultato funzione), e dopo vediamo come vengono inviati alla pagina stessa (Riga xx CAMPO_POT_UTILE).

    allora io ho fatto questa cosa qui:

    Codice PHP:
    extract ($_POST);
        
    $ca_pot_utile min_max($campo_pot_utile_min,$campo_pot_utile_max,"Campo potenzialità utile");
        echo 
    "
    "
    .__LINE__." CAMPO_POT_UTILE: ".$ca_pot_utile;
    ...
    ...
        
    $campo_pot_utile_       min_max($_POST['campo_pot_utile_min'],$_POST['campo_pot_utile_max'],"Campo potenzialità utile");
        echo 
    "
    "
    .__LINE__." CAMPO_POT_UTILE: ".$campo_pot_utile
    perchè la prima funziona e la seconda no???
    Ciao!

  9. #19

    Re: [PHP] Funzione che non funziona...

    problema individuato...!!!

    io utilizzo per scrivere il codice il programma phpDesigner, e facendo copia incolla da documenti di testo, evidentemente non interpreta correttamente il contenuto delle righe.

    infatti riscrivendo la riga manualmente e commentando l'originale, funziona alla perfezione.
    Codice PHP:
    //min_max($min,$max,$nomecampo);
    min_max($min,$max,$nomecampo); 
    strano...
    Ciao!

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.