Probleme php que faire?

Fermé
cerise - 9 juin 2010 à 13:40
ChrisCompote Messages postés 73 Date d'inscription mardi 8 juin 2010 Statut Membre Dernière intervention 19 juin 2010 - 10 juin 2010 à 22:08
Bonjour,

J'ai un probleme. J'ai un fichier .php contenant des fonctions et je dois mettre ces fonctions de maniere automatique dans des .class.php...

je pensais utiliser des include ou require mais ça ne marche pas avec les .class...

Que me conseillez vous?

A voir également:

1 réponse

ChrisCompote Messages postés 73 Date d'inscription mardi 8 juin 2010 Statut Membre Dernière intervention 19 juin 2010 8
9 juin 2010 à 13:50
Bonjour,


Je te conseille de créer un fichier include.php dans le quel tu auras tous tes includes


include('functions.php');

include('maclass.class.php');



Tes fonctions contenus dans functions.php seront accessibles dans maclass.class.php (l'ordre des include a son importance)

Après je te conseille aussi d'ajouter une variable $niv par exemple qui sera le niveau d'arborescence de tes fichiers.

Ex :

index.php

$niv = '/';

include($niv.'include.php');



Dans un autre répertoire ex rep1/test.php

$niv = '../';
include($niv.'include.php');



Et on include.php


include($niv.'functions.php');

include($niv.'maclass.class.php');



0
euuh d'accord mais dans ma classe j'ai pas compris ce que je devais mettre parce que genre ligne 25 de ma classe je vais avoir la fonction getreq(); et le 45 la fonction addreq() à inserer du coup je fais comment?

bon mes fonctions seront dans function.php apres donc j'ai mon fichier include ou je met include(mafonction(getreq($pram1, $param2)))?

Si tu pouvais m'éclaircir un peu tout cela se serait gentil merci
0
ChrisCompote Messages postés 73 Date d'inscription mardi 8 juin 2010 Statut Membre Dernière intervention 19 juin 2010 8
9 juin 2010 à 14:05
Tu écris tes fontions dans le fichier functions.php
function getreq($pram1, $param2)
{ ...}
function addreq($pram1, $param2)
{ ...}

Et dans tes classes tu appelles ces fonctions par getreq($pram1, $param2);
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
9 juin 2010 à 14:09
Bonjour,

include ne sert pas à inclure une fonction, mais tout un fichier.
Concrètement, quand tu inclus un fichier, cela revient pour le moteur php à copier-coller l'ensemble de ton fichier inclus à l'endroit où il y a l'instruction INCLUDE() (sauf pour les balises <?php et ?> qui restent nécessaires dans le fichier inclus).

Donc, au début de ton fichier, tu fais include("fonctions.php"), et ensuite, tu utilises ces fonctions comme si elles étaient définies dans ton fichier en cours.

Xavier
0
est ce genant si je met un parcours aussi long dans $niv?

$niv ='../../package/';
include ($niv.'package2.php');

Mes classes ne sont pas dans le meme repertoire que package2.php et ne sont pas non plus dans le meme repetoire les unes les autres, du coup je fais quoi pour $niv?

include ('Testsuite.class.php');
0
ChrisCompote Messages postés 73 Date d'inscription mardi 8 juin 2010 Statut Membre Dernière intervention 19 juin 2010 8
10 juin 2010 à 22:08
package ne vient pas dans $niv =
Soit cette arborescence
/rep1/rep2/rep3/package/index.php
rep4/accueil.php
/rep6/submit.php
/include/fonctions.php
include.php
/cgv.php

Dans include tu écrira
include ($niv.'include/fonctions.php');


Dans index.php
$niv = '../../../../';
include($niv.'/include.php');
Du code PHP
</code

Dans accueil.php
<code>
$niv = '../../../';
include($niv.'/include.php');



Dans submit.php
$niv = '../../';
include($niv.'/include.php');


et dans csv.php


Dans cgv.php
$niv = '/';
include($niv.'/include.php');


On ne voit pas l'interet du fichier include.php dans cette exemple mais siavec plusieurs classes supplémentaires ça devient intéressant
0