PROBLEMA Problemi su hosting Aruba

Pubblicità

personalele

Nuovo Utente
Messaggi
51
Reazioni
10
Punteggio
24
Salve a tutti,
ho un sito in sviluppo e "test" su tre hosting diversi: locale (funziona tutto), Keliweb (funziona tutto), Aruba....non ho capito che problema ha.
Nella precedente versione caricata funzionava anche su aruba, poi ho continuato lo sviluppo e testato localmente funziona, caricato su dominio keliweb funziona, su aruba riesco a modificare i record esistenti ma non ad inserirne di nuovi, ma non ricevo alcun errore ne di DB ne da PHP (ho abilitato la visualizzazione degli errori). Stesso codice, stesso DB. Come posso fare a capire cosa non va? E' possibile fare il debug del codice PHP online come per quello locale? (attualmente sto usando netbeans)
Attendo una vostra illuminazione e vi ringrazio anticipatamente!!!!
Gabriele.
 
La query di inserimento viene generata dal codice php?
Se si io proverei a stamparla, o visualizzarla con il debug e copiarla per inserirla manualmente in phpmyadmin di aruba. Di solito se c'è un errore nella query, phpmyadmin te lo visualizza subito.
 
Salve a tutti,
ho un sito in sviluppo e "test" su tre hosting diversi: locale (funziona tutto), Keliweb (funziona tutto), Aruba....non ho capito che problema ha.
Nella precedente versione caricata funzionava anche su aruba, poi ho continuato lo sviluppo e testato localmente funziona, caricato su dominio keliweb funziona, su aruba riesco a modificare i record esistenti ma non ad inserirne di nuovi, ma non ricevo alcun errore ne di DB ne da PHP (ho abilitato la visualizzazione degli errori). Stesso codice, stesso DB. Come posso fare a capire cosa non va? E' possibile fare il debug del codice PHP online come per quello locale? (attualmente sto usando netbeans)
Attendo una vostra illuminazione e vi ringrazio anticipatamente!!!!
Gabriele.
Hai provato a vedere nell'ispeziona di google chrome, tab network, e vedere le richieste alla pagine php cosa danno in output? Immagino che l'insert lo fai chiamando una pagina, per esempio, prova.php. Ora al momento dell'insert, nella tab network ti apparirà questa pagina. Cliccaci sopra e vedi nella tab reponse se esce qualche errore
 
Ultima modifica:
La query di inserimento viene generata dal codice php?
Se si io proverei a stamparla, o visualizzarla con il debug e copiarla per inserirla manualmente in phpmyadmin di aruba. Di solito se c'è un errore nella query, phpmyadmin te lo visualizza subito.
Ciao @alemian95,
la query è generata da php con oop PDO->prepare / PDO->execute.
Non riesco a provare esattamente la query, ma la domanda è: perchè su DB altro hosting funziona; sempre mysql, stesso php (e quindi stessa query, stessa struttura db) e, soprattutto, non riesco ad intercettare errori?
Ti ringrazio per l'interessamento, spero che arriveremo alla soluzione.
Gabriele.
 
Credo di aver capito il problema...ora, però, ho bisogno della soluzione :(
ricevo l'errore 'General error: 1366 Incorrect integer value: '' for column' per ogni campo del form lasciato vuoto associato ad un campo non numerico del db. Si tratta della modalità "STRICT" di mysql che vieta l'utilizzo di pratiche non "best practices" generando errori. Ora:
1) è sconsigliato disabilitare tale modalità, ma in caso non riesco a trovare una soluzione migliore, come faccio ad impostare la modalità "normale" di mysql su hosting Aruba?

2) poichè non posso/voglio memorizzare il valore 0 per ogni campo numerico non valorizzato dall'utente, come posso fare?

Grazie per tutti i suggerimenti,
Gabriele.
 
Credo di aver capito il problema...ora, però, ho bisogno della soluzione :(
ricevo l'errore 'General error: 1366 Incorrect integer value: '' for column' per ogni campo del form lasciato vuoto associato ad un campo non numerico del db. Si tratta della modalità "STRICT" di mysql che vieta l'utilizzo di pratiche non "best practices" generando errori. Ora:
1) è sconsigliato disabilitare tale modalità, ma in caso non riesco a trovare una soluzione migliore, come faccio ad impostare la modalità "normale" di mysql su hosting Aruba?

2) poichè non posso/voglio memorizzare il valore 0 per ogni campo numerico non valorizzato dall'utente, come posso fare?

Grazie per tutti i suggerimenti,
Gabriele.
Non puoi mettere che quel campo è NULL?
 
2) poichè non posso/voglio memorizzare il valore 0 per ogni campo numerico non valorizzato dall'utente, come posso fare?
L'unica cosa che mi viene in mente al momento è provare ad entrare nelle impostazioni della tabella e impostare NULL come valore di default per i campi ai quali non vuoi dare un valore.
 
Perchè non usare nelle query il NULLIF ?
La funzione NULLIF ha bisogno due parametri, i quali se sono uguali restituisce NULL
Esempio:
SELECT NULLIF(3,3) FROM table ritornerà NULL
SELECT NULLIF(2,3) FROM table ritornerà 2

Quindi puoi creare degli INSERT in cui metti NULLIF e nel caso in cui sia empty inserisce NULL.
Esempio:
INSERT INTO table VALUES (NULLIF('$valore',''))
Se $valore è vuoto allora metterà nel database NULL, altrimenti inserirà correttamente $valore
Altrimenti dei controlli IF/ELSE a livello di backend in cui controlli manualmente se un valore è empty allora deve diventare NULL.
 
Pubblicità
Pubblicità
Indietro
Top