|
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. | NEI PREFERITI | .:: | RSS Forum | RSS News | NEWS web | NEWS software | |
| PUBBLICITA' | | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | | CERCA nel FORUM » | |
23-03-2009, 13.51.20 | #1 |
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
|
[PHP] Catturare messaggi mysql
Dal momento che mysql lo fa di suo questo controllo all'inserimento, pensavo di catturare il messaggio d'errore ritornato, far leggere questo a PHP e vedere da qui se il problema è stata la data. Non so però come leggere i messaggi d'errore generati da mysql, c'è una funzione che può aiutarmi? |
23-03-2009, 14.51.22 | #2 |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
|
Se l'anno modulo 4 da come risultato 0, vuol dire che l'anno è bisesto (anno funesto). Infatti, vi è un anno bisetile ogni 4.
Prova. il 1972 era bisestile, così come il 1976, il 2000, ecc |
23-03-2009, 15.21.19 | #3 |
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
|
Ho risolto con la funzione mysql_error() e poi una ricerca all'interno della stringa ottenuta per vedere se c'è contenuta la frase "Incorrect date value".
Funziona |
23-03-2009, 15.21.58 | #4 | |
Gold Member
Registrato: 14-06-2001
Loc.: LC
Messaggi: 2.415
|
In realta' c'e' un'eccezione per gli anni "secolari" (quelli che finiscono con 00):
Quota:
Codice:
$giorni=cal_days_in_month(CAL_GREGORIAN,2,$anno);
___________________________________
|
|
23-03-2009, 20.18.10 | #5 |
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
|
A fare tutti i controlli sulla data ci pensa mysql quando faccio l'insert o l'update sulla tabella, per verificare che in caso di errore la causa sia stata o no la data mi basta leggere il messaggio d'errore che genera mysql, se può interessare controllo così:
Codice:
if(!mysql_query($query,$db)) { //non è avvenuto l'inserimento $data_errata = "Incorrect date value"; //è parte del messaggio che genera mysql in caso di data errata //controllo se il messsaggio di errore di mysql contiene la stringa $data_errata if (strlen(stristr(mysql_error($db),$data_errata))>0) { print "La data inserita non e' corretta"; } } |
Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti) | |
Strumenti discussione | |
|
|
Discussioni simili | ||||
Discussione | Autore discussione | Forum | Risposte | Ultimo messaggio |
Hacker attacca sito antipedofilia | Sbavi | Archivio News Web | 34 | 15-02-2008 01.08.23 |
[Mysql] Php non vede Mysql [OK] | espiritos | Programmazione | 17 | 01-12-2005 21.59.52 |
MySQL Admin. 1.1.3 | Thor | Archivio News Software | 0 | 27-09-2005 16.42.28 |
MySql | turf | Windows 9x/Me/NT4/2000 | 5 | 30-06-2004 09.56.42 |