Joomla.it Forum

Componenti per Joomla! => Gestione Form => : markuty 20 Dec 2016, 20:48:25

: RISOLTO - campo password
: markuty 20 Dec 2016, 20:48:25
Buonasera a tutti,

sto cercando di inserire un semplice campo dove immettere una password da me inviata a coloro che devono compilare il form, onde evitare inserimenti da intrusi.

Il sito non prevede log-in...

Ho provato ad inserire un Password Box da Designer ma poi in Setup non riesco a farlo funzionare...

grazie per l'aiuto
: Re:campo password
: tomtomeight 21 Dec 2016, 07:43:12
Scusa se la invii tu perché la inserisci nel form che dovrebbero compilare gli utenti piuttosto che mandargliela via email?
: Re:campo password
: markuty 21 Dec 2016, 10:21:49
Salve tomtomeight,

sostanzialmente io invio un codice o password via email agli utenti che devono compilare il form,
il quale codice o passowrd deve essere digitato in un apposito campo di testo nel form e
se quanto digitato è uguale al codice/password da me inviato, gli utenti possono inoltrare
il form compilato, altrimenti se il codice/password è errato, restituisce un errore.

In pratica vorrei mettere da Designer un text box o password box (che chiamerò passw1) e da Setup un controllo
per quel campo nel quale dico che se passw1 è uguale a "xyz" allora puoi inviare il form, altrimenti no.

Più o meno come con il captcha che devi inserire il testo dell'immagine, solo che nel mio caso
bisogna inserire il testo che io comunico e solo chi ne è in possesso può inviare il form.

Spero di essere stato chiaro.

Grazie
: Re:campo password
: tomtomeight 21 Dec 2016, 11:44:45
Adesso è chiaro, ma credo che non serve impostarlo come password quel campo.
: Re:campo password
: markuty 27 Dec 2016, 12:26:35
Ho risolto anche leggendo questo post:
http://forum.joomla.it/index.php?topic=247791.0 (http://forum.joomla.it/index.php?topic=247791.0)

Da Designer > Basic ho inseito un semplice Text Box,
nell' Edit > General del Text Box ho inserito:
Field Name=password
Field ID=password
Label=password
Sub Label=inserire la password ricevuta con la email

nell' Edit > Validation:
Required=Yes

poi andando in Setup, dentro la sezione On submit ho inserito da Validation un Event Switcher
sull' Edit dell Event Switcher
Events=success,fail
in code ho inserito questo codice php

:
<?php
if ($form->data['password']<>"xyzxyz") {
$form->errors[] = "La password inserita non corrisponde a quella inviata con la email";
return 
"fail";
}
?>

nell' On Fail dell' Event Switcher ho inserito un Event Loop
ed in Event name=load

così funziona... ora può inviare il form solo chi possiede la password che io fornisco!