Bonjour tous le monde , j'ai un soucis qu'en à la récupération de mes values dans mais input de ma class Form
en effet j'ai une erreur :
Notice: Trying to get property of non-object in C:\UwAmp\www\windows\core\Form.php on line 22
Voici mon code de cette classe :
<?php
class Form{
public $controller;
public function __contruct($controller){
$this->controller = $controller;
}
public function input($name,$label,$options = array()){
if($label == 'hidden'){
return '<input type="hidden" name="'.$name.'" value="'.$this->controller->request->data->$name.'">';
}
$html = '<div class="clearfix">
<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 .= '<input type="text" id="input'.$name.'" name="'.$name.'" value="'.$this->controller->request->data->$name.'" '.$attr.'>';
}elseif($options'type'] == 'textarea'){
$html .= '<textarea id="input'.$name.'" name="'.$name.'" '.$attr.'>'.$this->controller->request->data->$name.'</textarea>';
}elseif($options'type'] == 'checkbox'){
$html .= '<input type="hidden" name"'.$name.'" value="0"><input type="checkbox" name"'.$name.'" value="1"/>';
}
$html .= '</div></div>';
return $html;
}
}
?>
et voici le code de ma fonction dans mon controller :
function admin_edit($id = null){
$this->loadModel('Wincident');
if($this->request->data){
$this->Wincident->save($this->request->data);
$id = $this->Wincident->id;
}
$this->request->data = $this->Wincident->findFirst(array(
'conditions' => array('id'=>$id)
));
}
sachant que mon Wincident correspond a mon model Wincident (Post, dans le tuto)
auriez vous une idée , il y a bien un findFirst array donc normalement mes variables sont bien initialisées objets.
merci d'avance
Bonjour,
On dirait que ton objet request n'est pas instancié...
public function __contruct($controller){
$this->controller = $controller;
debug($this->controller->request);
}
Tu obtiens quelque-chose ?
pourtant si je fait un debug de ($this->request->data->contenu) par exemple directement dans mon admin_edit.php il l'affiche mais il ne la reconnait pas dans Form.php
si ca peut aider j'ai egalement cette erreur
Notice: Undefined property: Form::$request in C:\UwAmp\www\windows\core\Form.php on line 16