moonwar Posté 8 Juin 2009 Posté 8 Juin 2009 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.
SStephane Posté 8 Juin 2009 Posté 8 Juin 2009 aucun rapport avec le paramètre php, tu peux inclure tes fichiers js avec une url absolue sans souci
moonwar Posté 8 Juin 2009 Auteur Posté 8 Juin 2009 ...tu peux inclure tes fichiers js ... Heu... qui a parlé de fichiers js??? ... Ma quéstion est d'inclure des pages php externes via un javascript...
Dadou Posté 8 Juin 2009 Posté 8 Juin 2009 Parce que dans les inclusions c'est du js qui est généré tout bêtement
moonwar Posté 8 Juin 2009 Auteur Posté 8 Juin 2009 ca veut dire que je vais juste mettre : <script type="text/javascript" src="http://www.site.com/page.php"></script> c'est tout? parce que ca marche pas cette ecriture!
moonwar Posté 9 Juin 2009 Auteur Posté 9 Juin 2009 J'ai fait cela avec un iframe... mais j'aime pas vraiment! de plus, ce n'est pas securitaire ..non?
captain_torche Posté 9 Juin 2009 Posté 9 Juin 2009 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.
Dadou Posté 9 Juin 2009 Posté 9 Juin 2009 ca veut dire que je vais juste mettre : <script type="text/javascript" src="http://www.site.com/page.php"></script> c'est tout? parce que ca marche pas cette ecriture! parce que page.php DOIT générer du javascript
SStephane Posté 9 Juin 2009 Posté 9 Juin 2009 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 "http://www.site.com/page.php" est un fichier js généré par PHP.
moonwar Posté 9 Juin 2009 Auteur Posté 9 Juin 2009 (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 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 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 "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é 9 Juin 2009 par moonwar
captain_torche Posté 9 Juin 2009 Posté 9 Juin 2009 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.
SStephane Posté 9 Juin 2009 Posté 9 Juin 2009 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
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant