Bonjour,
Je suis actuellement la série tutoriel php creer un site web et j'ai un probleme avec mon classError qui ne s'affiche pas. Merci d'avance !!
Form.php
<?php
class Form{
public $controller;
public $errors;
public function __construct($controller){
$this->controller = $controller;
}
public function input($name,$label,$options = array()){
$error = false;
$classError = '';
if(isset($this->errors[$name])){
$error = $this->errors[$name];
$classError = 'danger';
}
if(!isset($this->controller->request->data->$name)){
$value = '';
}else{
$value = $this->controller->request->data->$name;
}
if($label == 'hidden'){
return '<input type="hidden" name="'.$name.'" value="'.$value.'">';
}
$html = '<div class="clearfix'.$classError.'">
<label for="input'.$name.'">'.$label.'</label>
<div class="input">';
$attr = ' ';
foreach($options as $k=>$v){ if($k!='type'){
$attr .= "$k=\"$v\"";
}}
if(!isset($options['type'])){
$html .= '<p><input type="text" id="input'.$name.'" name="'.$name.'" value="'.$value.'"'.$attr.'</p>';
}elseif($options['type'] == 'textarea'){
$html .= '<p><textarea id="input'.$name.'" name="'.$name.'"'.$attr.'>'.$value.'</textarea></p>';
}
elseif($options['type'] == 'checkbox'){
$html .= '<p><input type="hidden" name="'.$name.'" value="0"><input type="checkbox" name="'.$name.'" value="1" '.(empty($value)?'':'checked').'></p>';
}
if($error){
$html .= '<span class="help-inline">'.$error.'</span>';
}
$html .= '</div></div>';
return $html;
}
}
J'ai trouvé !!!!
public function input($name,$label,$options = array()){
$error = false;
$classError = '';
if(isset($this->errors[$name])){
$error = $this->errors[$name];
$classError = 'alert alert-danger';
}
Quand tu inscpecte l'élement ça donne quoi ?
A mon avis, tu dois avoir :
<div class="clearfixdanger">
Au lieu de :
<div class="clearfix danger">
Je me trompe ? Si c'est pas le cas, ajoute un espace ici :
$html = '<div class="clearfix '.$classError.'">
Bonjour,
Non ça marche pas même avec l'espace mais peut-être que ce viens pas de mon clearfix car quand je mets <div class="clearfix danger"> ca ne marche pas non plus ... Quand je l’inspecte j'ai rien mis à part que mon boostrap.min.css est chargé.