Funzione data

  • Creatore Discussione Creatore Discussione adfadf
  • Data di inizio Data di inizio

adfadf

Utente Attivo
18 Apr 2009
83
0
0
Salve a tutti, premetto che di Java so molto poco o quasi nulla, il problema è che ho bisogno di una funzione,
devo ricavarmi la data in automatico per confrontarla con il valore immesso dall'utente, ho provato a fare così, ma non và potreste aiutarmi?Grazie!!

PHP:
function controllo()
today = new Date();
self.status = today.toLocaleString();
{
with(document.FORM)
{
if(data.value< today) 
{
alert("Perfavore, la data non puo' essere precedente a quella odierna.");
data.focus();
return false;
}
}
return true;
 
Allora fammi capire: vuoi calcolare la data odierna, farla inserire a mano dall'utente e vedere se sa che giorno è?

Sono certo che non ho capito la tua esigenza, ma se ho capito bene invece... che senso ha?

In ogni caso, la data di oggi si scrive cosi:

var data = new Date();
var gg = data.getDate();
var mm = data.getMonth() + 1;
var aa = data.getYear();
var oggi = gg + "/" + mm + "/" + aa;

Per confrontarla da un campo di un form, scrivi cosi:

var data_utente = document.modulo.data_utente.value;
if (data_utente != data)
{
alert("ERRORE");
}
else
{
alert("CONFERMA");
}

Il form deve avere nome "modulo" e la casella di testo "data_utente".
 
Ci provo, sembra tutto molto chiaro
Ti spiego il senso: L'utente deve metter in vendita un oggetto e sarà lui a decidere da che giorno far apparire tra le vendite l'oggetto
La data appare in automatico, l'utente può modificarla ma solo inserendo una data successiva a quella odierna, quindi al posto di "!=" dovrei mettere ">", giusto?
GRAZIE!!!
 
Ciao, ti volevochiedere se potevo modificarlo così:

PHP:
<script language="JavaScript">

function controllo()
var dat = new Date();
var gg = dat.getDate();
var mm = dat.getMonth() + 1;
var aa = dat.getYear();
var oggi = gg + "/" + mm + "/" + aa;
var data_utente= document.form1.data.value;
{
with(document.form1)
{
if(data_utente<dat) 
{
alert("Perfavore, la data non puo' essere precedente a quella odierna.");
data.focus();
return false;
}
}
return true;

}

....:crying::crying::confused::confused:
 
Capisco, ma non vorrei dire una sciocchezza: scrivere > (maggiore) non penso sia sufficiente, dato che una data in Javascript, costruita come ti ho mostrato in precedenza, è di fatto una stringa.

Anzi, mantengo il beneficio del dubbio, ma diciamo che ne sono sicuro!

Lato server immagino che usi ASP o PHP; fossi in te, farei un controllo in AJAX, delegando ASP o PHP di gestire la data, visto che hanno delle funzioni di controllo di cui Javascript non dispone, oppure prova ad usare VBScript lato client per il controllo sul modulo.

Fammi sapere!
 
Ciao, ho deciso di usare questo script, praticamete il controllo lo faccio
nella pagina successiva e se l'utente inserisce una data precedente a quella odierna faccio il refres della pagina precedente , prima però gli faccio visualizzare un mesaggio in cui glii dico che deve inserire la data almeno pari a quella di oggi. Ecco il codice.
PHP:
$dataoggi=date("d/m/Y");


//isoliamo i valori contenuti nei due array
  $array_f = @explode ("/", $dataoggi);
  $array_s = @explode ("/", $_POST['data']);

  $dd1 = $array_f[0];
  $mm1 = $array_f[1];
  $yyyy1 = $array_f[2];

  $dd2 = $array_s[0];
  $mm2 = $array_s[1];
  $yyyy2 = $array_s[2];

//utilizziamo i valori degli array come termini di confronto 
  $confronto1 = @gregoriantojd($mm1, $dd1, $yyyy1);
  $confronto2 = @gregoriantojd($mm2, $dd2, $yyyy2);
  
//calcoliamo la differenza in giorni 
  $diff=$confronto1 - $confronto2;
 

Discussioni simili