Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592

    form invio dati e funzione forse richiamata

    scusate il titolo contorto ma sto cercando di capire un file su una applicazione..
    ho un form semplice che va a chiamare una pagina.
    codice HTML:
    <form action="elabora_rientri.php" method="post">    <input onclick="return confirm('Sei sicuro di elaborare i rientri?');"type="submit" value="Elabora Rientri" />    <input name="richiedi_elabora" type="hidden" value="1" /></form>
    ok.. apro la pagina elabora_rientri.php e il contenuto è questo:
    Codice PHP:
    <?php session_start();require_once "menu.php"
    if (
    $_POST['richiedi_elabora'] == '1') {    $start microtime(true);    elabora_rientri_completo($con);    echo microtime(true) - $start .' secondi';    } else {    echo 'L\'elaborazione completa va fatta dalle opzioni!';}?>
    eseguo la pagina e per 30 secondi, non ho aspettato di più perchè mi stavo annoiando, gira la rotellina del caricamento del browser..
    sta facendo qualcosa o sta richiamando altri file?
    ho un file functions_rientro.php che contiene una funzione che si chiama elabora_rientri_completo ma sbaglio o non viene richiamata?!?!?
    il file menu.php non contiene include o require di questa pagina o della pagina functions.php..
    cosa mi sto perdendo?

    grazie in anticipo a chiunque mi darà aiuto

  2. #2
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    AGGIORNAMENTO: il cliente mi ha detto: "no, no devi aspettare che arriva alla fine.."
    output della pagina elabora_rientri.php?
    252.11153793335 secondi
    che è il tempo che ci ha messo ad elaborarla..

  3. #3
    253 secondi? Beh, un applauso a chi ha ideato il sistema . Spero che alla fine abbia preparato pure il caffè
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  4. #4
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592

    è un file con 14 query e un sistema di functions di cui non ci ho capito NULLA..
    in sostanza dovrebbe, su un file con 5000 record di anagrafica, aggiornare un campo se ci sono determinate condizioni, che sono "scremate" dalle 13 query che fa.. le query le fa su una tabella di 22000 record.. non so se c'è un modo più veloce, ma credo che abbia creato un MOSTRO..
    se metto qualche function mi sai aiutare? o dovresti avere anche una idea di come è fatto il DB?

  5. #5
    cioè tu gli dai in pasto 5000 record di anagrafica, e lui per ognuno di questi record esegue 14 query su una tabella di 20K di record? se è così, stai messo maluccio, molto maluccio. Aiutarti è impossibile, dovrei sapere la struttura del db, la logica complessiva della procedura, cosa fanno le singole funzioni, e quali sono i requisiti. Così, a spanne, suggerirei:

    - crezione di indici mirati sulla tabella sql per l'ottimizzazione delle query
    - spostare più query possibili DENTRO al database attraverso store procedures
    - ottimizzare il più possibile

    Meno roba resta nel PHP, più è veloce l'aggiornamento dei dati: iterare 5000 valori, in php, è roba di poche decine di millisecondi, ma se per ogni iterazione hai decine di millisecondi di operazioni da fare (che sono, sostanzialmente, tutte le query che fai al db), allora le decine di millisecondi diventano secondi, minuti, ...

    Se le query fanno molti filtraggi o join, ad esempio: "select * from tabella where A='valore' and B='valore'", metti un indice che inglobi i due campi, velocizza parecchio la query; indicizza i campi di join se non sono FK, utilizza subqueries per filtrare i dati della query (poi scopri, come me ora, che MySql non supporta la clausola "WITH", e allora ti gongoli del fatto che NON usi mysql )

    Ricapitolando:

    - cerca di capire la logica della procedura
    - cerca di capire che fanno le query
    - cerca di far fare più operazioni possibili al db
    - ottimizza la tabella del db e le query
    - prega
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  6. #6
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    ..ovviamente non è una pagina che ho creato io.. (avrei fatto peggio.. )

    ti posso scrivere in privato?

    - prega
    AH AH AH!!!!

  7. #7
    scrivi pure
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

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.