2
Création de formulaire avec enregistrement dans une base.
Bonsoir
Je suis entrain de redev un plugin mais je bloque sur la création d’un formulaire. Je souhaite proposer une liste de choix checkbox et que si on coche plusieur case cela provoque une enregistrement par choix.
Mon formulaire se trouve ici http://amap.pierre-kuhn.org/?page=panier
Il faut choisir un adhérent (auteur) et cocher une case mais comme dois je modifier ce php :
<?php
if (!defined("_ECRIRE_INC_VERSION")) return;
function action_editer_amap_panier_dist() {
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
// pas de amap_panier ? on en cree un nouveau, mais seulement si 'oui' en argument.
if (!$id_amap_panier = intval($arg)) {
if ($arg != 'oui') {
include_spip('inc/headers');
redirige_url_ecrire();
}
$id_amap_panier = insert_amap_panier();
}
if ($id_amap_panier) $err = revisions_amap_paniers($id_amap_panier);
return array($id_amap_panier,$err);
}
function insert_amap_panier() {
// toutes les dates
$dates_distrib = (string)_request('date_distribution[]');
// le auteur
$id_auteur_adherent = (string)_request('id_auteur');
// pour chaque date, remplir un tableau de données correspondant à un amap_panier et l'enregistrer
foreach ($dates_distrib as $date_distrib) {
$data_insert['id_auteur'] = $id_auteur_adherent;
$data_insert['date_distribution[]'] = $date_distrib;
//var_dump($data_insert);echo "<br/>";
$champs = pipeline('pre_insertion', array(
'args' => array(
'table' => 'spip_amap_paniers',
),
'data' => $data_insert
));
$id_amap_panier = sql_insertq("spip_amap_paniers", $champs);
//return $id_amap_panier;
}
return $id_amap_panier;
}
// Enregistrer certaines modifications d'un amap_panier
function revisions_amap_paniers($id_amap_panier, $c=false) {
// recuperer les champs dans POST s'ils ne sont pas transmis
if ($c === false) {
$c = array();
foreach (array('id_auteur', 'date_distribution[]') as $champ) {
if (($a = _request($champ)) !== null) {
$c[$champ] = $a;
}
}
}
include_spip('inc/modifier');
modifier_contenu('amap_panier', $id_amap_panier, array(
'invalideur' => "id='id_amap_panier/$id_amap_panier'"
),
$c);
}
?>
Sachant que je travail avec les formulaire cvt.
Merci pour votre aide.