J'ai lu beaucoup de fil ici mais je suis toujours incapable d'obtenir une variable passée de PHP à un fichier JS externe et je me demandais si quelqu'un pouvait aider?
dans mon fichier php, j'ai ce qui suit; p> dans le fichier JS, j'ai ce qui suit; p> Ce que j'essaie d'atteindre est un iframe être ouvert et peuplé avec ce qui est contenu dans $ Company ["site web"]. Je sais que je peux simplement utiliser Iframe directement dans le fichier PHP, mais ce n'est pas ce que j'ai été chargé de mes devoirs. Lorsque j'utilise Iframe directement dans le fichier PHP, cela fonctionne bien, et si je spécifie une URL statique dans le fichier JS tel que http: //www.google.com Cela fonctionne également bien. P> Peut-on aider? Merci p> éditer: p> Merci pour les réponses jusqu'à présent, mais je suis toujours incapable de le faire fonctionner: ( P> Le cadre que je avoir dans piste.php (ou pack.js) ne chargera pas l'URL qui spécifiée dans $ Company ["site"] code>, pourtant, si je le change en
$ société [" site "] code> valeur isn ' t être passé: ( p> p>
6 Réponses :
Vous devriez corriger cette ligne:
Ajout var pass_this_variable = PHP Echo $ $ Company ["site web]; ?>; code> p>
echo code> et il devrait fonctionner p>
Appelez un fichier PHP à l'intérieur de la source JavaScript. Vous pouvez trouver le tutoriel ici:
http://www.javascriptkit.com/javatus/externalphp .shtml . p>
Donc, votre code sera comme celui-ci: p> dans le fichier php, vous pouvez récupérer la valeur via $ _GET code> variable et utilisez-le dans le iframe fort>. Assurez-vous de désinfecter l'entrée. P> p>
Si vous souhaitez que votre JavaScript externe soit dynamique, vous pouvez en créer un fichier PHP et donner l'en-tête correct, exemple: pack.php p>
fichier php (n'oubliez pas l'écho et la citant):
document.write('<IFRAME SRC="'+pass_this_variable+'" WIDTH="300" HEIGHT="400"></IFRAME>');
Et si le nom de la société est "Joe's Bar"? :-)
@Denis, je crois qu'une URL appropriée doit être codée avec% 27 au lieu d'utiliser des guillemets simples (réservé). Par conséquent, cela n'aura pas d'importance dans mon exemple. Cependant, il est toujours une bonne habitude de penser aux pauses de ligne, aux citations, etc. dans les chaînes.
JavaScript vous fournit la fonctionnalité d'Ajax dans le but de lire les fichiers PHP ou Text. Pourquoi ne créez-vous pas le fichier HTML iframe code> à l'intérieur d'un fichier PHP avec vos variables analysées, puis reprenez la réponse et "jette"-le à l'intérieur d'une DIV. p>
"JavaScript vous fournit la fonctionnalité d'Ajax"? Ajax est i> JavaScript. C'est ce que le J signifie.
Le code de votre fichier php: le code de votre fichier javascript (.js) pour obtenir la valeur de fichier php: p>
J'apprécierais si vous spécifiez ce qui s'est passé lorsque vous avez essayé ma solution. J'ai essayé et confirmé mon exemple avec différents
PHP $ Company ["site"] = "http://www.example.com/"; ?> code> dans le fichier php.