• User

    Timestamp & Request-URI Too Large

    Ciao a tutti,
    ecco i seguenti problemi odierni:

    1) Funzione Timestamp

    Ho creato un pannello attraverso il quale inserire nuovi articoli all'interno del mio portale. La rassegna stampa è mensile. Volevo utilizzare la funzione di php timestamp per registrare la data del salvataggio e quindi poter visualizzare l'output a seconda del mese in considerazione.

    Il problema è che nella query del db il valore salvato è pari a 00.00.00 0000.

    Ecco come ho disposto i vari file.

    Tabella MySQL:
    all'interno della tabella "articolo" ho creato un campo dal nome TIMESTAMP di tipo "TIMESTAMP"; gli altri attributi sono stati generati in automatico dal db, l'unico attributo sospetto è il predefinito2 che ha come valore 0000-00-00 00:00:00

    File save.php:
    ho usato la seguente sintassi, non chiedeti il perchè, l'ho trovato sul sito ufficiale delle funzioni di php

    [php]$timestamp = getdate();
    print_r($timestamp);[/php]Ora quando salvo un articolo il campo TIMESTAMP presenta in tutti i casi il valore 0000-00-00 00:00:00, ho provato a modificare il campo predefinito2 ma la cosa non cambia.

    Suggerimenti e idee?

    2) Quando inserisco un articolo abbastanza lungo (il che è abbastanza normale per la tipologia di documenti che affronto) mi viene visualizzato il seguente errore:
    Request-URI Too Large- The requested URL's length exceeds the capacity limit for this server.

    C'è un modo per ovviare a questo problema magari alzando il limite massimo di caratteri utilizzabili?

    Grazie a tutti in anticipo.
    Ciao

    Alessandro


  • User Attivo

    Per il primo problema, ti basta creare un TIMESTAMP valido utilizzando un codice come questo:

    [php]$tstamp = date("Y-m-d H:i:s");[/php]In ogni caso, sarebbe meglio evitare di utilizzare delle parole riservate (es. TIMESTAMP) come nome di campi.

    Per il secondo problema, è sufficiente che utilizzi il metodo POST invece che GET nella form.


  • User

    Timestamp: anche inserendo la stringa da te indicata non ho risolto il problema purtroppo. Hai altri suggerimenti o la sintassi completa che posso usare?

    Limit: perfetto con il metodo POST funziona perfettamente. Grazie


  • Bannato User Attivo

    ho creato un campo dal nome TIMESTAMP di tipo "TIMESTAMP";cambia il tipo da timestamp a int e problema risolto 🙂


  • User

    Sembrerà strano ma ancora non sono riuscito ad arrivare ad una soluzione.
    Allora riassumendo un attimo.
    Nella tabella articolo inserisco il campo DATA di tipo TIMESTAMP.
    Nel file save.php inserisco la seguente stringa:

    [PHP]
    $data= date("Y-m-d H:i:s");
    $data= getdate();
    print_r($data);
    [/PHP]

    Ma il valore che viene salvato è sempre 0000 00.00!
    Sapreste indicarmi il tipo esatto di campo che devo impostare e il codice esatto per salvare la data. Scusate ma da solo non ne vengo a capo!
    Grazie

    Ale


  • User Attivo

    Mi spieghi per quale motivo hai inserito $data= getdate()?

    Perchè non provi ad utilizzare il codice ESATTAMENTE come ti è stato suggerito?


  • User

    Il codice suggerito è il seguente *(preso da php.net) *

    [php]
    $today = getdate();
    print_r($today);
    [/php]Ho pensato avendo nominato il campo di timestamp "data" di sostituire $today con $data...il codice da te suggerito invece non l'ho modificato ho solo sbagliato a riportarlo qui nel post.

    Comunque filippo capisco che aiutare utenti inesperti sia a volte snervante, mi spiace continuare a chiedere, ma posso assicurarti che prima di farlo cerco più volte di cavarmela da solo, inserendo esattamento quello che mi viene suggerito e se non funziona cercando di adeguarlo per risolvere il problema.


  • User Attivo

    @ale_colombo said:

    Il codice suggerito è il seguente

    No, il codice suggerito NON è quello, è questo:

    Per il primo problema, ti basta creare un TIMESTAMP valido utilizzando un codice come questo:

    [php]$tstamp = date("Y-m-d H:i:s"); [/php]


  • User Attivo

    Perché non inserire time() così in futuro potreste cambiare il formato della visualizzazione? 😉

    Jeeves