Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1146 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  require_once et paramètre sous forme de variable

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

require_once et paramètre sous forme de variable

n°2104206
naeco
Buddy Rich Big Band
Posté le 30-09-2011 à 20:00:37  profilanswer
 

Bonjour,
Je suis hébergé chez free, et on est assez bridé de point de vu des appels d'adresses absolu, donc je suis obligé de travailler avec des adresses relatives.
 
ah force de bidouiller, j'ai réussi à me faire quelque chose accepté par free, mais pas accepté par require_once !!  :non:  
 
d'un coté je fais :
 

Code :
  1. require_once '../protected_include/JSON.php';


 
ca marche.  :o  
 
D'un autre coté, je fais :
 

Code :
  1. $recul2 = '../protected_include/JSON.php';
  2. require_once($recul2);


 
et ça me lève l'erreur  
 

Code :
  1. Fatal error: require_once() [function.require]: Failed opening required '' (include_path='/mnt/165/sdb/6/1/eric.zinck/include:.:/usr/php5/lib/php') in /mnt/165/sdb/6/1/eric.zinck/test/protected_include/JSON_appel.php on line 57


 :ouch:  
 
quelqu'un aurait une idée ?

mood
Publicité
Posté le 30-09-2011 à 20:00:37  profilanswer
 

n°2104526
naeco
Buddy Rich Big Band
Posté le 03-10-2011 à 21:51:25  profilanswer
 

snif, je vais être obligé de mettre tous mes fichiers à la racine pour que l'include d'include marche... :( personne n'a eu à faire ça avant ?

n°2104528
naeco
Buddy Rich Big Band
Posté le 03-10-2011 à 22:06:25  profilanswer
 

Mon réel problème caché derrière cette question est le suivant :
 
j'ai une organisation de répertoire qui est comme ceci : :o
 
index.php
routine.ajax.php
repertoireProtegeParhtacess/identificationBase.php
repertoireProtegeParhtacess/json.php //la bibliothèque pour compenser la version de free de php
repertoireProtegeParhtacess/JSON_appel.php //qui propose les deux fonction json_encode() et json_decode()
admin/index.php
admin/routineAdmin.ajax.php

 
 
donc naturellement, JSON_appel.php, fait un include('json.php').
 
et mes routine.ajax.php et routineAdmin.ajax.php font un include('JSON_appel.php')  :)  
 
Cela fonctionne sur mon serveur local  :jap: , mais sur free, ça marche plus pour routineAdmin.ajax.php, car il dit que JSON_appel.php ne trouve pas le json.php ... :pt1cable: (et l'autre fichier ajax à la racine trouve tout ce qu'il lui faut...)
 
===
-Je pourrai recopier le contenu de JSON_appel.php dans json.php, mais je trouve que c'est pas très propre d'écrire dans une bibliothèque  :(  
-Je pourrai faire partout 2 include() de JSON_appel.php et json.php, au lieu de faire un include de l'un qui fait lui même un include de l'autre, mais je trouve que c'est pas très élégant, déjà qu'il faut faire de la bidouille à cause d'une vielle version de free...  :ange:  
 
peut être devrais je faire un autre topic avec cette question :o


Message édité par naeco le 03-10-2011 à 22:07:04
n°2104558
rengzehn
Posté le 04-10-2011 à 08:49:44  profilanswer
 

tu peux pas recréer dynamiquement les path absolus ? genre avec __FILE__
 

Code :
  1. define('__ROOT__', dirname(dirname(__FILE__)));
  2. require_once(__ROOT__.'/toto.php);

n°2104563
art_dupond
je suis neuneu... oui oui !!
Posté le 04-10-2011 à 09:26:16  profilanswer
 

Code :
  1. $recul2 = './protected_include/JSON.php';
  2. require_once($recul2);


 :??:  
 
Si index.php inclus JSON_appel.php qui inclus JSON.php
 
Le chemin "se fait à partir de" index.php (si tu inclus JSON_appel.php dans index.php, il "est" dans index.php)


Message édité par art_dupond le 04-10-2011 à 09:26:25

---------------
oui oui
n°2104656
naeco
Buddy Rich Big Band
Posté le 04-10-2011 à 18:25:15  profilanswer
 

pour recréer le path : c'était l'objet initial du topic : c'est étrange, mais si je met le path, ça marche, et si je met le path dans un string puis dans le require, ça pète (cf le premier post), alors que c'est rigoureusement le même string...
 
 
art_dupond, oui et non : en local, avec WAMP, ca fonctionne, et sur free, ça fonctionne pas. Je pense qu'il doit y avoir une conf que je connais pas sur le serveur à ce propo. Mais dans tous les cas, je ne pourrai pas changer cette conf chez free, donc le mieux serait de savoir pourquoi mettre le path dans une variable puis lui passer en paramètre ne fonctionne pas... :/

n°2104904
art_dupond
je suis neuneu... oui oui !!
Posté le 05-10-2011 à 15:11:23  profilanswer
 

est-ce qu'en local, ton site est directement sous localhost ou dans un sous-répertoire ?
 
Si c'est dans un sous-répertoire, peut-être qu'il faudrait faire un virtualhost pour que ça se comporte pareil que chez free ?


---------------
oui oui
n°2104942
naeco
Buddy Rich Big Band
Posté le 05-10-2011 à 18:39:19  profilanswer
 

En effet, ça doit être l'explication.
Mais du coup, si je le fais, je vais avoir le problème des deux cotés lol, donc il faudrait d'abord que je trouve une solution à cet include d'include :o

n°2105045
art_dupond
je suis neuneu... oui oui !!
Posté le 06-10-2011 à 11:23:26  profilanswer
 

tu vas avoir le même problème des deux côtés => ça ne fait qu'un seul problème qui sera résolu plus facilement via le vhost qu'en essayant essayant de bidouiller (à mon avis :jap:)

 


edit: + je pense qu'il vaut mieux essayer d'avoir le plus possible les mêmes environnements (local vs free)


Message édité par art_dupond le 06-10-2011 à 11:25:15

---------------
oui oui

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  require_once et paramètre sous forme de variable

 

Sujets relatifs
Variable avec des noms de répertoiresajouter 1 mois à une variable date
passage de parametre avec autocomplete de jquery ui[RESOLU] En bash, curl avec du POST et plusieurs variable GET
[shell] comment retirer les ^M dans une variableprobleme de parametre avec requete préparéee dans une méthode MVC
Facebook Pages Require Secure Canvas URL[VBA]: variable static initialisation
[JS] Portée d'une variable, comprends pas[FLASH] Problème de mise en forme du texte
Plus de sujets relatifs à : require_once et paramètre sous forme de variable


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR