- Home
- Categorie
- Coding e Sistemistica
- Hosting, Server e Domini
- Internal Server error
-
Ok provo ma poichè le query sono tutte uguali, cambia solo il nome del titolo non è possibile raggrupparle e fare una sola query per tutti i titoli perchè se vedi il file mi sembra strano che si debbano fare tutte queste query, che poi sono praticamente tutte uguali.
Grazie
Nik
-
beh si potrebbero rendere dinamiche, nel senso di scegliere dinamicamente il tipo e il numero di parametri, in fin dei conti sono tutte delle SELECT
se poteva pure optare per SELECT *, ovviamente le performance sarebbero diminuite di un 4-5%
-
Capisco,
non ho idea su come si rendono dinamiche le query, potresti darmi una mano sulla base del file che ho allegato?
Grazie mille
Nik
-
beh innanzitutto bisognerebbe separare l'html dal php, mettendo il codice php in un file a parte, magari crea una funzione, che so la chiami RecuperaDati e ci metti dentro tutta la logica che esegue le query
per esempio se prendiamo queste due query
SELECT DISTINCT ticker, timeStamps, closeData FROM mytable WHERE ticker = 'SRG' ORDER BY timeStamps DESC LIMIT 2
SELECT DISTINCT ticker, DATE_FORMAT(timeStamps,'%d.%m.%Y') as date, closeData, openData, highData, lowData, volData From mytable Where ticker = 'PG' ORDER BY timeStamps DESC LIMIT 1
è chiaro che si può fare qualcosa del genere
SELECT DISTINCT $campi_da_estrarre as $alias_campi From mytable Where $condizione ORDER BY timeStamps DESC LIMIT 1
a seconda dei casi le variabili $campi_da_estrarre, $aliasi_campi e $condizione possono assumere vari valori, passati come parametri alla funzione
è chiaro che per fare una cosa del genere, bisogna analizzare completamente il flusso del programma, per stabilire cosa fa nelle varie query e a chi livello di generalizzazione si può arrivare
-
Ok, provo e ti faccio sapere
Grazie
Nik
-
Ciao,
ho fatto qualche tentativo ma niente da fare, non sono molto pratico di funzioni e variabili ...
Non ho capito se la query che proponi è l'unione delle prime 2 o è un altro modo per scrivere la seconda.
Se non erro nella funzione campi da estrarre devo elencare tutti i campi di cui ho bisogno, mentre $alias_campi non ho afferrato a cosa serve ...
$condizione = tutti i titoli per i quali ho sviluppaoto le singole query?
Grazie
Nik
-
se non conosci il linguaggio è difficile da fare....
ma chi l'ha sviluppato quel codice?
-
Il codice l'ho sviluppato io, forse non è molto professionale ma con una sola query funziona bene, non c'è timeout o lentezza nell'aprire la pagina.
Quando mi sono accorto che ci vuole un bel pò di tempo per aprire la pagina web ho cominciato a realizzare che forse bisogna stringere il file o magari alleggerirlo appunto con variabili, etc..Ma da qui a metterlo in pratica ... non sò se sono capace, ecco...
Le diffficoltà penso di incontrarle nell'attribuire le variali gli poi gli outputs ...
Se c'è per caso un'anima pia che mi fà sto favore a rieleborare il codice gliene sarei grato !!
Nik
-
Ciao,
secondo te l'uso degli array potrebbe avere a che fare con la soluzione del mio problema?
Non mi potresti dire qualcosina in più su come applicare la tua idea?
Grazie
Nik
-
no gli array non c'entrano con il problema che stai avendo
probabilmente o è una query in cui la sintassi è errata o è il carico sul database
ho notato che IIS ha il bruttissimo vizio di restituire un errore 500 quando incontra query sbagliate negli script