Visualizzazione risultati 1 fino 7 di 7

Discussione: 'goto' non funziona più ..

  1. #1
    coinroberto non è connesso Utente giovane
    Data registrazione
    10-06-2013
    Messaggi
    87

    Predefinito 'goto' non funziona più ..

    Ciao ..
    lo so .. il 'goto' non si dovrebbe usare .. :-)
    ma nel mio progetto oramai c'è e me lo devo tenere.
    Dopo quanto premesso veniamo al problema ..
    inizialmente ilo 'goto' non funzionava in quanto stavo usando il PHP 4 .. poi ho scoperto che si poteva usare il PHP 5 e avevo risolto tutti i miei problemi.
    Ieri non so cosa ho fatto con le impostazioni (credo di aver fatto anche dei 'reset') per fare delle prove con i file '.htaccess' .. fatto stà che non mi funziona più il 'goto'.
    Ho cancellato tutto il progetto e ricaricato nuovamente .. risultato zero. :-(

    https://coinroberto.ssl.altervista.org/
    Parse error: syntax error, unexpected T_STRING in /membri/coinroberto/inc_funzioni_varie.php on line 330

  2. #2
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,745

    Predefinito

    Puoi indicare il contenuto dello script incriminato?

  3. #3
    coinroberto non è connesso Utente giovane
    Data registrazione
    10-06-2013
    Messaggi
    87

    Predefinito

    Premetto che se asterisco il primo goto (riga 330) il problema si presenta al secondo ..

    Codice PHP:
    // ==========================================================================
    // --> estrazione id max dalla tabella

    function chk_id($db, $nome_tab, $nome_id)
    {
    $esito = 'OK' ;
    $err = '';

    $query = "SELECT max($nome_id)
    FROM
    $nome_tab
    "
    ;

    if (!
    mysql_query($query, $db))
    {
    $esito = 'KO' ;
    $err = "Errore durante la select max id : " . mysql_error() . " - " . mysql_errno();
    goto
    end; ---> riga 330
    }
    $result = mysql_query($query, $db);
    if (!
    mysql_query($query, $db))
    {
    $esito = 'KO' ;
    $err = "Acquisizione dati select max id KO: " . mysql_error() . " - " . mysql_errno();
    goto
    end;
    }
    $num_rec = 0;
    while (
    $row = mysql_fetch_array($result))
    if (
    mysql_query($query, $db))
    {++
    $num_rec;
    $id_max_sel = $row[0];
    }
    else
    {
    $esito = 'KO' ;
    $err = "fetch select max id : " . mysql_error() . " - " . mysql_errno();
    goto
    end;
    }


    end:
    $output = array($esito, $err);
    return
    $output ;
    }
    Ultima modifica di karl94 : 30-10-2013 alle ore 01.51.11 Motivo: Corretta formattazione del codice

  4. #4
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,745

    Predefinito

    Il codice è corretto, assicurati di avere attivo PHP 5.3.
    Nel file di configurazione .htaccess deve essere presente la seguente direttiva:
    Codice:
    AddHandler av-php53 .php

  5. #5
    coinroberto non è connesso Utente giovane
    Data registrazione
    10-06-2013
    Messaggi
    87

    Predefinito

    Volendo possiamo anche lascire nel file la sola query ..
    ora la riga incriminata è la 27 ..

    Codice PHP:
    <?php


    // -----------------------------------------------------------------------------
    // funzione 'chk_id' (verifica capacità dell'ID)
    // -----------------------------------------------------------------------------
    // $id_max_sel -> ID max estratto dalla tabella
    // $id_max -> numero masimo di ID accettati
    // $id_max_limite -> limite ID dopo il quale mandare avviso esaurimento

    function chk_id($db, $nome_tab, $nome_id)
    {
    $esito = 'OK' ;
    $err = '';

    // ==========================================================================
    // --> estrazione id max dalla tabella

    $query = "SELECT max($nome_id)
    FROM
    $nome_tab
    "
    ;

    if (!
    mysql_query($query, $db))
    {
    $esito = 'KO' ;
    $err = "Errore durante la select max id : " . mysql_error() . " - " . mysql_errno();
    goto
    end;
    }
    $result = mysql_query($query, $db);
    if (!
    mysql_query($query, $db))
    {
    $esito = 'KO' ;
    $err = "Acquisizione dati select max id KO: " . mysql_error() . " - " . mysql_errno();
    goto
    end;
    }
    $num_rec = 0;
    while (
    $row = mysql_fetch_array($result))
    if (
    mysql_query($query, $db))
    {++
    $num_rec;
    $id_max_sel = $row[0];
    }
    else
    {
    $esito = 'KO' ;
    $err = "fetch select max id : " . mysql_error() . " - " . mysql_errno();
    goto
    end;
    }


    end:
    $output = array($esito, $err);
    return
    $output ;

    }



    ?>
    Ultima modifica di alemoppo : 30-10-2013 alle ore 02.26.47 Motivo: [font] -> [php]

  6. #6
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,745

    Predefinito

    Sì, ma hai effettuato la verifica che ti ho indicato?

  7. #7
    coinroberto non è connesso Utente giovane
    Data registrazione
    10-06-2013
    Messaggi
    87

    Predefinito

    scusa ..
    non avevo visto il messaggio.
    :-)
    trovato .. vedevo php 5, ma non ero entrato nei dettagli
    avevo impostato PHP 5.2 .. probabilmente l'avevo cambiato toccando il file .htaccess
    Grazie infinite

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •