par
sadeq » 20 juin 2008, 12:08
C'est un problème de chemin d'accès relatif.
Si ton programme PHP est programmé pour écrire le PDF dans un chemin relatif, il le fera normalement dans le chemin à partir duquel l'exécution est démarrée.
Donc il faut faire gaffe au chemin d'exécution dans la Marco Access.
Par exemple :
Le chemin de travail est :
c:\fiches_actions
Voici un programme PHP qui écrit un fichier texte :
Fichier :
c:\fiches_actions\ficheX.php
<?php
file_put_contents("ficheX.txt", "Ceci est le contenu de la fiche X");
?>
Et voici le code du bouton du formulaire ACCESS qui démarre l'exécution du script PHP:
Code : Tout sélectionner
Private Sub cmd_exec_php_Click()
On Error GoTo Err_cmd_exec_php_Click
Dim stAppName As String
'Chemin de l'application PHP
ChDir ("c:\fiches_actions")
'Exécution de l'application PHP
stAppName = "C:\wamp\bin\php\php5.2.5\php.exe ficheX.php"
Call Shell(stAppName, VbAppWinStyle.vbHide)
Exit Sub
Err_cmd_exec_php_Click:
MsgBox Err.Description
End Sub
Remarque:
Si par contre dans le programme PHP, l'écriture du fichier se fait par un chemin absolu (complet), le problème n'est plus et le fichier sera créé toujours dans le dossier indiqué quelque soit le chemin de l'exécution.
Autrement dit, on n'aura plus besoin de l'instruction ChDir() pour fixer le chemin de travail.
C'est un problème de chemin d'accès relatif.
Si ton programme PHP est programmé pour écrire le PDF dans un chemin relatif, il le fera normalement dans le chemin à partir duquel l'exécution est démarrée.
Donc il faut faire gaffe au chemin d'exécution dans la Marco Access.
[b]Par exemple :[/b]
Le chemin de travail est : [b]c:\fiches_actions[/b]
Voici un programme PHP qui écrit un fichier texte :
Fichier : [b]c:\fiches_actions\ficheX.php[/b]
[php]<?php
file_put_contents("ficheX.txt", "Ceci est le contenu de la fiche X");
?>[/php]
Et voici le code du bouton du formulaire ACCESS qui démarre l'exécution du script PHP:
[code]Private Sub cmd_exec_php_Click()
On Error GoTo Err_cmd_exec_php_Click
Dim stAppName As String
'Chemin de l'application PHP
ChDir ("c:\fiches_actions")
'Exécution de l'application PHP
stAppName = "C:\wamp\bin\php\php5.2.5\php.exe ficheX.php"
Call Shell(stAppName, VbAppWinStyle.vbHide)
Exit Sub
Err_cmd_exec_php_Click:
MsgBox Err.Description
End Sub [/code]
[b]Remarque:[/b]
Si par contre dans le programme PHP, l'écriture du fichier se fait par un chemin absolu (complet), le problème n'est plus et le fichier sera créé toujours dans le dossier indiqué quelque soit le chemin de l'exécution.
Autrement dit, on n'aura plus besoin de l'instruction ChDir() pour fixer le chemin de travail.