Visualizzazione risultati 1 fino 20 di 20

Discussione: Problemi caricamento pagina

  1. #1
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito Problemi caricamento pagina

    Ciao, sul mio spazio Altervista ho creato un sito in php http://bellatrix.altervista.org/breakpoint/index.php che sostanzialmente raccoglie l'attività di un circolo di tennis (risultati dei tornei e classifiche).
    Non ho mai avuto nessun tipo di problema ma da qualche tempo la pagina http://bellatrix.altervista.org/brea...rank_sfide.php non mi carica più (premetto che in locale la pagina mi funziona regolarmente).
    Si tratta in effetti di una pagina dove il codice php ha un certo peso computazionale in quanto viene riportata una classifica che non viene letta da db bensì calcolata in tempo reale sfruttando due cicli in cui vengono riempiti degli array associativi che rappresentano i giocatori e le voci relative a tale classifica, questi array vengono poi ordinati con la funzione array_multisort per quasi tutte le voci, quindi viene stampata la classifica e infine viene fatta l'unset degli array.
    I cicli, come anticipato, sono due in quanto viene calcolata una classifica complessiva e una mensile.
    Quindi ogni mese che passa ovviamente gli array sono sempre più carichi.
    Al di là di ottimizzare il codice php, cosa sempre buona e giusta, la pagina in realtà non mi ha mai dato problemi e ha sempre funzionato l'anno e scorso e anche quest'anno fino ad Aprile più o meno da quando (segnalo anche questo) con l'aggiornamento di Mysql alla versione 8 ho avuto anche problemi di gestione del db e ho dovuto modificare il nome di un campo che avevo chiamato RANK in quanto con questa versione mi dava errore (forse è divenuta una parola chiave?).
    Vi risultano altri aggiornamenti che possono aver inciso sulla resa della mia pagina (l'unica che ha problemi)? Avete consigli per risolvere il problema?
    Grazie.
    Ultima modifica di bellatrix : 24-05-2022 alle ore 10.02.21

  2. #2
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,290

    Predefinito

    Salve,
    solitamente con l'attuale aggiornamento del database, viene anche variata la versione default di php dalla 5.6 alla 7.3.

    Prima dell'aggiornamento del database, quale versione di php aveva impostato?

    Inserendo il report degli errori nella pagina in questione, cosa viene restituito?
    Codice PHP:
    error_reporting(-1);
    Cordiali saluti.

  3. #3
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Ciao, penso che ci fosse sempre quella che in quel momento era di default, ovvero proprio la 5.6.
    Ho provato a riportare la 5.6 ma non ho tratto alcun beneficio.
    Non conosco la funzione error_reporting(-1), preciso però, come detto nel commento iniziale, che la pagina in locale mi carica regolarmente e che ha sempre funzionato anche sul Server di Altervista anche più velocemente che in locale.
    Mi documento su error_reporting(-1) e poi ti aggiorno.
    PS ma avete strumenti per diagnosticare problemi qui su Altervista?

  4. #4
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Può essere che funzioni o sintassi non sono idonei all'infuori di php 5.6, comunque php prevede un limite di memoria di 256 Megabyte e di esecuzione per file php non oltre 60 secondi. (In realtà non si tratta semplicemente ottimizzare ma non eccedere con i limiti).
    Purtroppo impiega troppo tempo la pagina e quindi penso è uno script scritto male.
    error_reporting impostato a 1 mostra del testo sia che esistano Warnings, Notice e altro (ma comunque l'esecuzione del codice php deve terminare).
    Ultima modifica di darbula : 24-05-2022 alle ore 14.47.15

  5. #5
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    La funzione error_reporting non mi segnala alcunché, ovviamente visto che l'esecuzione del codice deve terminare l'ho provata in locale dove la pagina viene caricata...
    Ultima modifica di bellatrix : 24-05-2022 alle ore 14.57.06

  6. #6
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Io sarei d'accordo con te, ma prima la pagina caricava correttamente e abbastanza rapidamente, quindi per quanto potesse essere scritto male funzionava.

  7. #7
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Premetto che non sono un programmatore, lo faccio per hobby a tempo perso e per passione verso il tennis, ma se volete posso postare il codice e accetto suggerimenti di ottimizzazione, basta che non mi perculiate se vi sembra codice scritto male in quanto si tratta di un progetto che ho scritto sfruttando i rudimenti e le reminiscenze universitarie la sera prima di andare a dormire... non avevo grosse pretese se non quelle che il tutto funzionasse come ha sempre fatto fino a poco tempo fa...

  8. #8
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    @bellatrix codice scritto male significa che adesso non va più bene (non le sue capacità di programmazione), purtroppo non esiste altro termine e non volevo indicare che lei abbia scritto cattivo codice.
    Si può postare il codice privo di dati personali tra cui senza password e email.

  9. #9
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,760

    Predefinito

    Citazione Originalmente inviato da bellatrix Visualizza messaggio
    Vi risultano altri aggiornamenti che possono aver inciso sulla resa della mia pagina (l'unica che ha problemi)?
    A parte l'aggiornamento di mysql, che io sappia non c'è stato altro.

    Ho provato a riportare la 5.6 ma non ho tratto alcun beneficio.
    Occhio che è possibile modificare la versione PHP cartella per cartella: assicurati che non ci sia una "ri-scrittura" della versione PHP nella cartella dove è presente lo script incriminato.
    In ogni caso, il passaggio a PHP7 dovrebbe migliorare le performance, non degradarle.

    Citazione Originalmente inviato da bellatrix Visualizza messaggio
    Avete consigli per risolvere il problema?
    Ti consiglierei di fare i "calcoli" direttamente tramite queries, sono più ottimizzate rispetto a PHP.

    Ciao!

  10. #10
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Citazione Originalmente inviato da darbula Visualizza messaggio
    @bellatrix codice scritto male significa che adesso non va più bene (non le sue capacità di programmazione), purtroppo non esiste altro termine e non volevo indicare che lei abbia scritto cattivo codice.
    Si può postare il codice privo di dati personali tra cui senza password e email.
    No ma guarda che non mi sono offeso, anzi non essendo un lavoro, ci sta che effettivamente il mio codice non sia performante e magari alcuni costrutti possono essere elementari o confusionari, sono il primo ad ammetterlo... il fatto è, mi ripeto, che fino all'aggiornamento di Altervista la pagina caricava in pochi secondi.

  11. #11
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Mi sto convincendo che il problema sia l'aggiornamento di Mysql. Che voi sappiate è possibile richiedere un rollback di versione o bisogna per forza lavorare con la 8? E' l'unica cosa che cambia dalla mia postazione locale, io lavoro con la 5.7, prima dell'aggiornamento la pagina su Altervista caricava molto più velocemente che in locale (sfruttando evidentemente le prestazioni del server), dopo l'aggiornamento non carica più probabilmente a causa di raggiunti limiti di memoria e tempo di cui parlava qualcuno sopra, dovuti (suppongo) alla scarse performances delle query che ho utilizzato sul nuovo database.
    Ultima modifica di bellatrix : 25-05-2022 alle ore 10.56.28

  12. #12
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,290

    Predefinito

    Salve,
    se lei ha sviluppato il suo codice per lavorare con MySQL 5.7 è molto probabile che esso non sia pienamente compatibile con MySQL 8.x, poichè ci sono delle differenze da MySQL 5.x.

    Citazione Originalmente inviato da bellatrix Visualizza messaggio
    Che voi sappiate è possibile richiedere un rollback di versione o bisogna per forza lavorare con la 8?
    No, tale operazione andrebbe ad influire anche sugli altri siti presenti nel server. Far operare i tecnici allo scopo di far retrocedere il database come caso isolato esclusivamente al suo sito, quando il prblema può essere risolto aggiornando il suo codicie per essere reso pienamente compatibile con MySQL 8.x, non è pensabile.

    Come già suggerito in precedenza da darbula, mostri il codice di tale pagina, e si potrà vedere di aliutarla a modificarlo per aggiornalo. In caso contrario, a mono che lei non sia nelle possibilità di aggiornarlo adeguatamente, il problema non potrà essere risolto.

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 25-05-2022 alle ore 14.59.17

  13. #13
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Dando per plausibile che la latenza sia causata dalle query provo ad allegare il file query_list_sfide.php dove c'è il listato di tutte le query che utilizzo nel codice per il calcolo della classifica.
    Codice PHP:
    class QueryChallenge
    {
    const
    PLAYERS_SFIDE = "SELECT distinct(P.id) as id, P.cognome as cognome, P.nome as nome " .
    "FROM players as P, archivio_sfide as A " .
    "WHERE (P.id = A.id_loser OR P.id = A.id_winner) " .
    "AND DATE_FORMAT(A.data, '%Y') = ? " .
    "AND DATE_FORMAT(A.data, '%m') <= ?";

    const
    PLAYERS_SFIDE_MESE = "SELECT distinct(P.id) as id, P.cognome as cognome, P.nome as nome " .
    "FROM players as P, archivio_sfide as A " .
    "WHERE (P.id = A.id_loser OR P.id = A.id_winner) " .
    "AND DATE_FORMAT(A.data, '%Y') = ? " .
    "AND DATE_FORMAT(A.data, '%m') = ?";

    static public function
    puntiBaseGiocate($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS GIOCATE FROM archivio_sfide WHERE (id_winner = ? OR id_loser =?) AND DATE_FORMAT(data, '%Y') = ? AND DATE_FORMAT(data, '%m') $op ?";
    return
    $query;
    }

    static public function
    puntiBaseSupPrimFascia($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS W_VS_1F FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = RLOS.data_ins
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND ( RLOS.fascia = 1 OR (( (RLOS.raank < RWIN.raank AND RLOS.raank !=0) OR (RWIN.raank = 0 AND RLOS.raank >0)) AND RLOS.fascia <= RWIN.fascia))"
    ;
    return
    $query;
    }

    static public function
    puntiBaseInf($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS W_VS_INF FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = RLOS.data_ins
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND (RWIN.fascia < RLOS.fascia OR ( (RWIN.raank < RLOS.raank and RWIN.raank != 0 OR ( RLOS.raank = 0 and RWIN.raank != 0)) AND RWIN.fascia <= RLOS.fascia)) AND RLOS.fascia != 1"
    ;
    return
    $query;
    }

    static public function
    puntiBonusSupPrimFascia2_0($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS W_VS_1F FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = RLOS.data_ins
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND (
    RLOS.fascia = 1 OR
    RLOS.fascia < RWIN.fascia OR
    (RLOS.fascia <= RWIN.fascia AND RLOS.raank < RWIN.raank AND RLOS.raank >0) OR
    (RWIN.raank = 0 AND RLOS.raank >0 and RLOS.fascia < RWIN.fascia))
    AND A.htoh = '2-0'"
    ;
    return
    $query;
    }

    static public function
    puntiBonusInf2a0($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS W_VS_INF FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = RLOS.data_ins
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND (RWIN.fascia < RLOS.fascia OR (RWIN.raank < RLOS.raank and RWIN.raank > 0 AND RWIN.fascia <= RLOS.fascia))
    AND ((RLOS.fascia - RWIN.fascia) < 2) AND A.htoh = '2-0'"
    ;
    return
    $query;
    }

    static public function
    puntiCircuito1a01F($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS W_VS_1F FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = RLOS.data_ins
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND RLOS.fascia = 1 AND (A.htoh = '1-0' or A.htoh = '1-1')"
    ;
    return
    $query;
    }

    static public function
    puntiCircuitoPrimaVinta5to8oLiv2A($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS W_VS_2F FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = RLOS.data_ins
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND (RLOS.raank IN (5,6,7,8) OR (RLOS.fit IN ('4.3') AND RLOS.raank > 4))
    AND (A.htoh = '1-0' or A.htoh = '1-1')"
    ;
    return
    $query;
    }

    static public function
    puntiBonusSupPrimFascia($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS W_VS_1F FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = RLOS.data_ins
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND (
    RLOS.fascia = 1 OR
    RLOS.fascia < RWIN.fascia OR
    (RLOS.fascia <= RWIN.fascia AND RLOS.raank < RWIN.raank AND RLOS.raank >0) OR
    (RWIN.raank = 0 AND RLOS.raank >0 and RLOS.fascia < RWIN.fascia))
    AND (A.htoh = '2-0' or A.htoh = '2-1')"
    ;
    return
    $query;
    }

    static public function
    puntiCircuitoPrimaVinta9to16oLiv2B($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS W_VS_3F FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND RWIN.data_ins = RLOS.data_ins AND ((RLOS.raank > 8 and RLOS.raank < 17) OR (RLOS.fit in ('4.4','4.5') AND RLOS.raank > 8) ) AND (A.htoh = '1-0' or A.htoh = '1-1')"
    ;
    return
    $query;
    }

    static public function
    getCircuitoOver161a0($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT COUNT(*) AS W_VS_OV16 FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = RLOS.data_ins
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND (RLOS.raank > 16 or RLOS.raank = 0) AND RLOS.fascia >=3 AND (A.htoh = '1-0' or A.htoh = '1-1') AND ((RLOS.fascia - RWIN.fascia) < 2)"
    ;
    return
    $query;
    }

    static public function
    puntiCircuitoBonusChiusa($periodo){
    $op = "<=";
    if(
    $periodo == "m")
    $op = "=";
    $query = "SELECT RWIN.raank as RANK_WIN, RLOS.raank as RANK_LOS, RWIN.fit as FIT_WIN, RLOS.fit as FIT_LOS,
    RWIN.punti_pr + RWIN.punti_dmc + RWIN.punti_aut + RWIN.punti_sfi + RWIN.punti_mas as PNT_WIN,
    RLOS.punti_pr + RLOS.punti_dmc + RLOS.punti_aut + RLOS.punti_sfi + RLOS.punti_mas as PNT_LOS
    FROM archivio_sfide as A, ranking as RWIN, ranking as RLOS
    WHERE A.id_winner = ? AND A.id_winner = RWIN.player_id AND A.id_loser = RLOS.player_id
    AND DATE_FORMAT(A.data, '%Y') = ?
    AND DATE_FORMAT(A.data, '%m')
    $op ?
    AND RWIN.data_ins = RLOS.data_ins
    AND RWIN.data_ins = (select max(data_ins) FROM ranking WHERE data_ins <= A.data)
    AND ((RLOS.raank >0 && RLOS.raank <= 16) OR RLOS.fit IN ('4.1','4.2','4.3','4.4','4.5','4.6')) AND (A.htoh = '2-0' OR A.htoh = '2-1')"
    ;;
    return
    $query;
    }
    }
    Ecco una definizione semplificata delle tabelle coinvolte:

    [sql]
    CREATE TABLE IF NOT EXISTS `archivio_sfide` (
    `anno` varchar(4),
    `data` date NOT NULL,
    `id_winner` int NOT NULL,
    `id_loser` int NOT NULL,
    `score` varchar(20),
    `htoh` varchar(10)
    );
    [/sql]

    [sql]
    CREATE TABLE IF NOT EXISTS `ranking` (
    `data_ins` date DEFAULT NULL,
    `player_id` int NOT NULL,
    `raank` int NOT NULL,
    `anno` varchar(4),
    `fase` int NOT NULL,
    `punti_pr` float(11,1) DEFAULT NULL,
    `punti_dmc` float(11,1) DEFAULT NULL,
    `punti_aut` float(11,1) DEFAULT NULL,
    `punti_sfi` float(11,1) DEFAULT NULL,
    `punti_mas` float(11,1) DEFAULT NULL,
    `fit` varchar(5),
    `fascia` int DEFAULT NULL,
    `delta_fit` int NOT NULL DEFAULT '0',
    PRIMARY KEY (`player_id`,`anno`,`fase`,`delta_fit`);
    [/sql]

    [sql]
    CREATE TABLE IF NOT EXISTS `players` (
    `id` int NOT NULL AUTO_INCREMENT,
    `nome` varchar(25),
    `cognome` varchar(30),
    `data_nascita` date DEFAULT NULL,
    `attivo` varchar(1),
    PRIMARY KEY (`id`)
    );
    [/sql]

    Non pretendo che spulciate nei dettagli le query, sarebbe una pazzia, ma i più esperti magari coglieranno a occhio subito eventuali problematiche legate a codice non performante o non buono e magari avranno suggerimenti da darmi.
    Grazie a tutti.

  14. #14
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    La classe QueryChallenge è parte del codice (inteso tutto
    il codice del programma) che sembra ritorni la stringa pre database sql memorizzata dentro la variabile $query (pre database prima di effettuare l'istruzione sql).

    Credo quel codice usi i segnaposto/placeholder php mysql, però il contesto (cioè l'errore può trovarsi altrove), riesci nel verificare se è un'oggetto mysql if(is_object(ritorno query al database)) {
    } else {
    echo 'non funziona';
    }?
    Il debug è anche scomporre il codice, per individuare l'errore è bene guardare il manuale online e soprattutto i ritorni coincidano (se il manuale dice oggetto e trovi un boolean false significa non funziona).
    Ultima modifica di darbula : 26-05-2022 alle ore 08.24.53

  15. #15
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Per debuggare dovrei farlo in locale, ma come detto in locale avendo Wamp con Mysql 5 non ho errori, dovrei provare ad aggiornare Mysql in locale e fare le verifiche ma ho già visto sui forum che l'aggiornamento di Mysql alla versione 8 su Wamp dà parecchi grattacapi...

  16. #16
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Semmai ci provo...

  17. #17
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Debug manualmente posizionando il codice a tentativo e crei un file che salva l'output con https://www.php.net/manual/en/function.error-log.php con messaggio di tipo 3 e /membri/bellatrix/darbula.txt (file darbula.txt e percorso di root in altervista /membri/bellatrix/).
    Ultima modifica di darbula : 26-05-2022 alle ore 11.42.39

  18. #18
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Ciao, allora sono riuscito ad aggiornare in locale su wampserver la verssione di Mysql alla 8.0.26, la stessa di Altervista e magia magia ora la pagina non va più nemmeno in locale, dunque il problema è la versione del db.
    L'errore che si visualizza è il seguente:

    ( ! ) Fatal error: Maximum execution time of 120 seconds exceeded in C:\wamp64\www\breakpoint\php\classi\sfide.php on line 296
    Call Stack
    # Time Memory Function Location
    1 0.0009 404696 {main}( ) ...\rank_sfide.php:0
    2 0.0301 491944 Sfide->getClassificaSfide( ) ...\rank_sfide.php:217
    3 103.3012 528264 Sfide->totPuntiSfide( ) ...\sfide.php:581
    4 110.9927 528264 Sfide->puntiCircuito( ) ...\sfide.php:558
    5 118.4994 528264 Sfide->puntiCircuitoOver161a0( ) ...\sfide.php:543

    Mi conigliate di verificare e rivedere i metodi elencati nel Call Stack?

  19. #19
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Ho risolto banalmente inserendo alcuni indici sulle due tabelle coinvolte nelle query della pagina. Ora la pagina mi carica mediamente in 10 secondi...

  20. #20
    bellatrix non è connesso Utente AlterBlog
    Data registrazione
    24-06-2019
    Messaggi
    15

    Predefinito

    Tra l'altro gli indici inzialmente li avevo messi, mi sono reso conto che ogni volta che faccio l'export da phpyadmin locale e importo gli aggiornamenti delle tabelle (in cui inserisco i risultati) vengono persi.

Tags for this Thread

Regole di scrittura

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