Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2017
    Messaggi
    117

    Comparazione Variabili Data + Query

    EDIT:
    Ho fatto progressi ed ho individuato il problema quindi riscrivo il post con una domanda più specifica.

    Ho queste variabili e devo modificarne una dopo un confronto. Non sono sicuro se i formati siano corretti per il confronto con if() e non so che formato è necessario per il ->modify. Come devo fare?
    Codice PHP:
    $dbcontrattuale $polizza['contrattuale']; // Data in formato Y-m-d presa dal database
    $newscad $pscadenza->format('Y-m-d'); // Altra data in formato database

     
    if($newscad>$dbcontrattuale
            {
            
    $dbcontrattuale->modify('+1 year');
            
    $rinnovo mysql_query("UUPDATE polizze SSET contrattuale = '$dbcontrattuale' WWHERE id = '$pid';");
            } 
    In caso vi interessi la provenienza di $pscadenza:
    Codice PHP:
    Post con <input type="text" name="titolo"in cui l'utente digita la data in formato 31/12/2016.
    $pscadenza = DateTime::createFromFormat('
    d/m/Y', $_POST['titolo']); 
    Così non funziona e credo che il problema sia nel ->modify
    Ultima modifica di fluxKami; 10-03-2017 a 11:34

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Il problema è che se davvero $dbcontrattuale contiene solo una stringa (la data) non puoi chiamarci sopra il metodo di una classe, perché non è un'istanza di una classe, ma appunto solo una stringa.
    Ti appare qualche errore? Che dice?

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2017
    Messaggi
    117
    Pagina bianca ad eccezione dell'header e del menu sottostante.
    Tutti il resto del contenuto html sparisce nel bianco come una nocciolina in una bufera di neve.
    Ultima modifica di fluxKami; 10-03-2017 a 12:34

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Sì, ma oltre a scrivere poesie, da qualche informazione utile in più.
    $dbcontrattuale contiene solo una stringa, oppure è l'istanza di una classe che ha il metodo modify() ?
    Come ti ho già scritto, se è una stringa semplice non puoi chiamarci sopra un metodo.

    Verifica nel file php.ini il livello impostato per error_reporting, se non lo è già, impostalo su E_ALL e riavvia il server, così ti da tutti gli errori e gli warning.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2017
    Messaggi
    117
    Ho provato a farlo così: http://i67.tinypic.com/33en7l1.png
    Ed ho ottenuto questo: http://i64.tinypic.com/10db2vl.png
    Adesso anche rimettendo quell'opzione come prima non riesco a invertire l'output del mio sito.

    In compenso nel pannello di controllo ho trovato una lista degli errori

    Fri, 10 Mar 2017 14:03:01 GMT [notice] - www.axive.it - AH00163: Apache/2.4.25 (Unix) configured -- resuming normal operations
    Fri, 10 Mar 2017 14:03:01 GMT [notice] - www.axive.it - AH00094: Command line: '/apache/bin/httpd -D FOREGROUND'
    Fri, 10 Mar 2017 10:18:00 GMT [error] [client 5.88.255.108] - www.axive.it - AH01215: PHP Fatal error: Call to a member function modify() on a non-object in /web/htdocs/www.axive.it/home/overlaypolizza.php on line 57: /php-wrapper/php-cgi, referer http://www.axive.it/polizza.php?id=38

    Edit: sistemato il sito cancellando dei file user.ini comparsi nella root, adesso almeno sappiamo perché il modify non funziona. Come faccio a trasformare $dbcontrattuale in un oggetto?

    Edit: Fermi tutti, ci sono riuscito. Non so bene perché il codice che ho scritto funzioni, ma funziona. In particolare non so se ho fatto ad usare bene nell'ultima riga.
    Codice PHP:
            $dbcont DateTime::createFromFormat('Y-m-d'$dbcontrattuale);
            
    $dbcont->modify('+1 year');
            
    $dbc $dbcont->format('Y-m-d'); 
    Ultima modifica di fluxKami; 10-03-2017 a 18:10

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Funziona perché adesso $dbcont è un'istanza della classe DateTime.

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.