Aller au contenu

Sujets conseillés

Posté

Bonjour,

Mon site roule sous-php5 et comme tout le monde le sait depuis la version 5.2 de php5 allow_url_include est à "off". Alors, je ne peux plus inclure un lien externe.

J'ai remarqué sur le web, que des sites comme google ou autres donnent la possibilité d'inclure leurs informations sur nos sites en utilisant des liens genre:

<script type="text/javascript"
src="http://www.site.com/page.php">
</script>
<noscript> <a href="http://www.site.com/page.php">lien page.</a>
</noscript>

Comme je n'ai aucune idée sur le javascript, Ma quéstion est: Comment faire ce genre d'appel (include) si j'héberge mes scripts (php4) chez un hébergeur qui supporte le php4 et les appellé de mon site qui supporte le php5?

Merci pour votre aide.

Posté

aucun rapport avec le paramètre php, tu peux inclure tes fichiers js avec une url absolue sans souci :)

Posté
...tu peux inclure tes fichiers js ...

Heu... qui a parlé de fichiers js??? :nonono: ... Ma quéstion est d'inclure des pages php externes via un javascript...

Posté

Si je comprends bien, la page que tu souhaite inclure génère du code HTML ? Dans ce cas, il est parfaitement normal que le JS ne fonctionne pas.

L'iframe peut être une solution, effectivement (elle ne pose par contre pas de soucis de sécurité, mais de référencement).

Tu peux tenter également de faire un readfile() puis un echo du contenu du fichier.

La dernière solution serait, si tu as accès à la configuration de ton serveur, de modifier le php.ini pour remettre allow_url_include à on.

Par contre, en relisant ton premier message, tu parles de fichiers de scripts ? Sache que dans tous les cas, c'est uniquement le code HTML généré qui sera inclus : tu ne peux pas utiliser une fonction que tu aurais définie dans ces fichiers.

Posté

De toutes façons, tu te situes dans le HTML, donc après le processus PHP, chez le client quoi... en gros allow_url_include ne te sert à rien dans ce cas là, à cette heure ton php est déjà exécuté.

Si tu cherches à inclure du HTML, ce n'est pas avec <script> qu'il faut le faire, mais comme te l'explique capitaine_torche, avec readfile() ou include(), et là effectivement, si tu veux utiliser une url absolue, il te faudra passer le paramètre à On.

PHP est juste un processeur pour générer des fichiers côté serveur pour les afficher au client, après tu peux générer ce que tu veux : xml, js, html, txt, pdf.

quand tu écris :

<script type="text/javascript" src="http://www.site.com/page.php"></script>

Tout laisse à penser que &quot;http://www.site.com/page.php" est un fichier js généré par PHP.

Posté (modifié)

Merci pour vos réponses,

Si je comprends bien, la page que tu souhaite inclure génère du code HTML ?
Oui, du html généré par du php (un ti programme coté BDD qui roule sous-php4) c'est pour cela que je ne peux pas l'executé directement sur mon site.

Tu peux tenter également de faire un readfile() .. si tu as accès à la configuration de ton serveur, de modifier le php.ini pour remettre allow_url_include à on.
Je n'ai pas d'accès sur mon serveur, j'ai un hébergement mutualisé et mon allow_url_include est a Off.

Par contre, en relisant ton premier message, tu parles de fichiers de scripts ? Sache que dans tous les cas, c'est uniquement le code HTML généré qui sera inclus : tu ne peux pas utiliser une fonction que tu aurais définie dans ces fichiers.
Script! effectivement, c'est des scripts comme celui de la meteo, taux de change, prix des produits... et tout roule sous-php4

parce que page.php DOIT générer du javascript
Merci pour ton information... je ne le savais pas :shutup:

De toutes façons, tu te situes dans le HTML, donc après le processus PHP, chez le client quoi... en gros allow_url_include ne te sert à rien dans ce cas là, à cette heure ton php est déjà exécuté.
Pas chez le client, chez moi! ... je ne cherche pas à pomper a un site, je veux executer mes programmes.

Si tu cherches à inclure du HTML, ce n'est pas avec <script> qu'il faut le faire, mais ... avec readfile() ou include(), ...
alala :nonono: Je n'ai pas d'accès sur mon serveur, j'ai un hébergement mutualisé et mon allow_url_include est a Off.

quand tu écris :

<script type="text/javascript" src="http://www.site.com/page.php"></script>

Tout laisse à penser que &quot;http://www.site.com/page.php" est un fichier js généré par PHP.

j'ai expliqué en haut que c'est une ecriture que j'ai remarqué chez qlq sites et j'ai demandé si c'etait possible que je fasse la meme chose pour moi!

Merci pour vos remarques ... j'espere que tout est expliqué a présent et qu'une solution existe pour mon cas... non?

Modifié par moonwar
Posté

Le plus simple, serait d'adapter le programme pour qu'il tourne sous PHP5. Quelles sont les erreurs qui sont générées ?

Tu peux également tenter de renommer le fichier avec une extension .php4, il est possible que ton hébergeur l'interprète correctement.

Posté

Si php4 ne tourne pas sur le serveur et que la proposition ne fonctionne pas, essaie de modifier le paramètre dans ton .htaccess, avec un peu de chance ça peu fonctionner.

php_flag allow_url_include on

ou même en haut de ta page PHP

ini_set(allow_url_include, 1);

sinon :

Le plus simple, serait d'adapter le programme pour qu'il tourne sous PHP5

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...