Ciao a tutti, ho un problemino.
Ho creato un metodo che richiamandolo e passando dei parametri mi crea un <input>.
Funziona, riesco a creare il mio form, se l' utente non compila i campi obbligatori le sessioni fanno colorare i campi di rosso...insomma quelle cose li. La cosa strana è che continua a darmi queste 2 notice:
Notice: Undefined index: _autofocus in C:\Program Files\xampp\htdocs\new_bs_site\class\c_html_form.p hp on line 120
Notice: Undefined index: _input_style in C:\Program Files\xampp\htdocs\new_bs_site\class\c_html_form.p hp on line 120
Ce l' ha con 2 variabili di sessione richiamate dentro <input> che però non si chiamano nemmeno così. Si chiamano:
- nome_campo_autofocus
- nome_campo_input_style
Vengono richiamate dinamicamente grazie al parametro $nome passato al metodo. Quindi ricapitolando le 2 variabili funzionano ma mi da quella notice come se non esistesse la variabile $nome che serve a dare dinamicamente il nome alla sessione.
Codice PHP:
//Input text
public function f_get_input($w, $name, $class, $value)
{
//Creo un' array contenente vari gruppi di input e le loro caratteristiche
$attributes_list = array(
"username" => array("type" => "text",
"name" => "username",
"required" => "required",
"class"=> $class,
"value" => $value
),
"password" => array("type" => "text",
"name" => "password",
"required" => "required",
"class"=> $class,
"value" => $value
),
"simple_text" => array( "type" => "text",
"name" => $name,
"class"=> $class,
"value" => $value
),
"text_required"=> array("type" => "text",
"name" => $name,
"required" => "required",
"class"=> $class,
"value" => $value
),
"submit" => array("type" => "submit",
"name" => $name,
"class" => $class,
"value" => $value
)
); //Fine array principale
//Se nell' array degli attributi trova la chiave "required"
//setto su "required=required" la variabile required
$required = in_array('required' , $attributes_list[$w]) ? "required=\"required\"" : "";
//questa è la parte incriminata che mi da la notice:
return "<input " . $_SESSION[$name."_autofocus"] . "
" . $_SESSION[$name."_input_style"] . "
".$required." type=\"".$attributes_list[$w]["type"]."\"
name=\"".$attributes_list[$w]["name"]."\"
class=\"".$attributes_list[$w]["class"]."\"
value=\"".$attributes_list[$w]["value"]."\" /> \n";
}//Fine metodo
Ricapitolando funziona tutto a parte che mi da quelle notice. La variabile $home arriva, se la stampo la vedo. Bah