Le 17/05/2015 12:49, Alex Jud a écrit :
Merci pour la réponse,
Je n'avais pas vu ce sujet évoqué dans les archives. Peut être mal cherché.

Pour l'enregistrement ce serait de toutes les imprimer preremplies pour
les anciens membres sans avoir à rentrer dans leur fiche adhérent.
Ce qui n'est pas possible depuis galette peut également se faire simplement à coup de script externe. L'exemple suivant réalise exactement le besoin exprimé ici, à savoir extraire les fiches de tous les adhérents qui correspondent à un certain critère de filtrage, codé en dur dans la requête SQL.
--
Guillaume















































































































#!/usr/bin/perl

use strict;
use warnings;

use DBI;
use Getopt::Long;
use WWW::Mechanize;

my $options = {};

GetOptions(
    $options,
    'password=s',
    'username=s',
    'dbusername=s',
    'dbpassword=s',
);

die "no password" unless $options->{password};
die "no username" unless $options->{username};
die "no db password" unless $options->{dbpassword};
die "no db username" unless $options->{dbusername};

my $dbh = DBI->connect(
    "DBI:mysql:database=galette", $options->{dbusername}, $options->{dbpassword}
);

my $sth = $dbh->prepare(
    "SELECT id_adh FROM galette_adherents where id_statut != 7 AND id_statut != 
16"
);
$sth->execute();

my @ids;
while (my $row = $sth->fetchrow_arrayref()) {
    push @ids, $row->[0];
}
$dbh->disconnect();

my $mech = WWW::Mechanize->new();

$mech->get('https://adherents.leo-mare.org');

$mech->submit_form(
    form_number => 1,
    fields      => {
        login    => $options->{username},
        password => $options->{password},
    }
);

foreach my $id (@ids) {
    my $uri = 
"https://adherents.leo-mare.org/plugins/galette-plugin-fullcard/fullcard.php?id_adh=$id";;
    my $file = "adherent_$id.pdf";
    $mech->get($uri, ':content_file' => $file);
}
_______________________________________________
Galette-discussion mailing list
Galette-discussion@gna.org
https://mail.gna.org/listinfo/galette-discussion

Répondre à