Changes

Jump to navigation Jump to search
m
Line 202: Line 202:     
=== Créer une page écran PHP brute ===
 
=== Créer une page écran PHP brute ===
Vous pouvez ensuite créer vos pages PHP, qui se basent sur les données de vos tables, en utilisant les squelettes fournis comme exemple dans le répertoire '''dev/skeletons''' (Pour le développement d'un script en ligne de commande, voir [[Développement de scripts]]).
+
Vous pouvez ensuite créer vos pages PHP, qui se basent sur les données de vos tables, en utilisant les squelettes fournis comme exemple dans le répertoire '''modulebuilder''' (Pour le développement d'un script en ligne de commande, voir [[Développement de scripts]]).
    
Pour créer une nouvelle page écran utilisateur, créer un sous-répertoire de '''htdocs''' (si non déjà fait) propre à votre module (Dans '''htdocs/monmodule''' par exemple) afin d'y placer les pages que vous aller créer.
 
Pour créer une nouvelle page écran utilisateur, créer un sous-répertoire de '''htdocs''' (si non déjà fait) propre à votre module (Dans '''htdocs/monmodule''' par exemple) afin d'y placer les pages que vous aller créer.
   −
Y recopier le fichier '''skeleton_page.php''' qui va servir de point de départ.
+
Y recopier le fichier '''myobject_page.php''' qui va servir de point de départ.
 
Modifier le fichier afin que le main.inc.php soit trouvés
 
Modifier le fichier afin que le main.inc.php soit trouvés
 
<source lang="php">
 
<source lang="php">
 +
// Load Dolibarr environment
 
$res=0;
 
$res=0;
if (! $res && file_exists("../main.inc.php")) $res=@include("../main.inc.php"); // to work if your module directory is into dolibarr root htdocs directory
+
// Try main.inc.php into web root known defined into CONTEXT_DOCUMENT_ROOT (not always defined)
if (! $res && file_exists("../../main.inc.php")) $res=@include("../../main.inc.php"); // to work if your module directory is into a subdir of root htdocs directory
+
if (! $res && ! empty($_SERVER["CONTEXT_DOCUMENT_ROOT"])) $res=@include($_SERVER["CONTEXT_DOCUMENT_ROOT"]."/main.inc.php");
 +
// Try main.inc.php into web root detected using web root caluclated from SCRIPT_FILENAME
 +
$tmp=empty($_SERVER['SCRIPT_FILENAME'])?'':$_SERVER['SCRIPT_FILENAME'];$tmp2=realpath(__FILE__); $i=strlen($tmp)-1; $j=strlen($tmp2)-1;
 +
while($i > 0 && $j > 0 && isset($tmp[$i]) && isset($tmp2[$j]) && $tmp[$i]==$tmp2[$j]) { $i--; $j--; }
 +
if (! $res && $i > 0 && file_exists(substr($tmp, 0, ($i+1))."/main.inc.php")) $res=@include(substr($tmp, 0, ($i+1))."/main.inc.php");
 +
if (! $res && $i > 0 && file_exists(dirname(substr($tmp, 0, ($i+1)))."/main.inc.php")) $res=@include(dirname(substr($tmp, 0, ($i+1)))."/main.inc.php");
 +
// Try main.inc.php using relative path
 +
if (! $res && file_exists("../main.inc.php")) $res=@include("../main.inc.php");
 +
if (! $res && file_exists("../../main.inc.php")) $res=@include("../../main.inc.php");
 +
if (! $res && file_exists("../../../main.inc.php")) $res=@include("../../../main.inc.php");
 
if (! $res) die("Include of main fails");
 
if (! $res) die("Include of main fails");
 
</source>
 
</source>

Navigation menu