Je cherche à créer dynamiquement un formulaire qui sera vide ou renseigné selon une action (ajout, modification) afin d’éviter d’avoir trois versions différentes du même fichier. Pour ce faire, j’ai commencé par écrire une classe. Le souci étant qu’il n’y a pas d’appel de cette classe. Je vais tâcher de décrire le contexte.
J’ai une page web composée par des inclusions de fichiers. Les classes (donc celle pour le formulaire) sont appelées à partir de cette page
Un utilisateur cherche un produit par l’intermédiaire d’un champ texte. La validation du formulaire fait appel à une méthode :
if (isset ($_POST['search_btn'])) {
$gestion_fiches->getProduit_fiche($_POST['search_product']);
…
}
Cette méthode est destinée à récupérer l’ensemble des informations concernant ce produit et à les afficher dans un fichier tiers, qui contient le formulaire que je cherche à modifier dynamiquement :
public function getProduit_fiche($getProduct_fiche) {
…
select = $this->db->prepare('SELECT info…) ;
try {
$select->execute();
$nbreLine = $select->rowCount();
if ($nbreLine > 0) {
$data = $select->fetch();
include '… /fiche_edition.php'; // affichage du formulaire
$select->closeCursor();
…
}
Quelques lignes de code de fiche_edition.php' :
<form name="modifFiche" method="post" action="fichier.php" target="_blank">
<table border="0" cellpadding="5" cellspacing="1" width="600">
…
<?php $formFiche->nomFiche(Common_functions::$content); ?>// affichage dynamique d’un champ texte, mais avec une autre classe
…
A l’affichage, j’obtiens :
Pourquoi ? Je ne comprends d’autant plus que dans ce même fichier, j’ai des informations venant de la méthode ‘ function getProduit_fiche($getProduct_fiche)’ qui s’affiche correctement !:- Notice: Undefined variable: formFiche in …\fiche_edition.php
- Fatal error: Call to a member function nomFiche() on a non-object in …\fiche_edition.php
<td colspan="2"><?php echo $data->nom; ?></td>
Merci,