Générer des fichiers via une fonction - forcer l'exécution d'un script ?
Bonjour,
Voilà ce que je souhaite faire :
j'ai un bouton dans une appli qui une fois cliqué doit déclencher l'envoi d'un email avec plusieurs documents pdf.
Pour ce faire, j'utilise fpdf pour générer les pdf. Un script par pdf généré. Chaque pdf doit être stocké sur dans un répertoire du serveur.
Ensuite j'ai un script qui se chargera d'envoyer un email avec en pièces jointes les pdf (fichiers stockés sur le serveur).
Mon gros soucis c'est que je n'arrive pas via des include ou des fonctions à faire fonctionner mon script de qui me génère le pdf et le stocke sur le serveur.
Structure du code qui génère le pdf et le stocke sur le serveur
appelons le contrat_reservation_fichier.php situé dans le répertoire doc_pdf
Code:
1 2 3 4 5 6 7
|
//début de code
require('../include/fpdf.php');
// reste du code
// ....
// etc ...
$pdf->Output('../pdf_clients/contrat_4.pdf','F'); |
Le script de stockage fonctionne très bien si depuis une page je clique sur un lien du type :
Code:
1 2
|
<a href="doc_pdf/contrat_reservation_fichier.php?id_contact=<?=$id_contact?>&id_reservation=<?=$id_reservation?>" target="_blank" >DOC1 - CONTRACT fichier serveur test </a><br/> |
Maintenant si dans ma page qui me sert à traiter les différents actions de l'utilisateur je fais :
Code:
1 2 3 4 5 6 7 8
|
if (isSet($_POST['EnvoiEmailBooking'])) {
$_POST = slash_all($_POST);
$id_contact = $_POST['id_contact'];
$id_demande = $_POST['id_demande'];
$id_reservation = $_POST['id_reservation'];
include("../doc_pdf/contrat_reservation_fichier.php");
} |
rien ne se passe : aucun fichier généré.
J'ai essayé en transformant mon fichier en fonction ex :
Code:
1 2 3 4 5 6
|
function contrat_reservation_pdf_serveur ($id_contact, $id_reservation, $connexion);
{
require('../include/fpdf.php');
// suite du code
$pdf->Output('../pdf_clients/contrat_4.pdf','F'); |
puis en faisant
Code:
1 2 3 4 5 6 7 8
|
if (isSet($_POST['EnvoiEmailBooking'])) {
$_POST = slash_all($_POST);
$id_contact = $_POST['id_contact'];
$id_demande = $_POST['id_demande'];
$id_reservation = $_POST['id_reservation'];
contrat_reservation_pdf_serveur ($id_contact, $id_reservation, $connexion)
} |
idem ...
Je bloque totalement.
si j'arrivais à simuler l'utilisation du lien, peut être que cela pourrait fonctionner