从PHP文件调用函数到另一个PHP文件?

时间:2011-10-03 10:57:21

标签: php javascript html

我使用以下代码创建了一个名为“page.php”的文件。

<!DOCTYPE  HTML>
<html>
    <body>
        <?php
            require 'form.php';
        ?>
        <a href="#" onclick="call_popup('form_container')">Click this link!</a>
   </body>
</html>

我使用以下代码创建了另一个文件“form.php”:

<script type="text/javascript">
    function call_popup (container_id) {
        var id= document.getElementById(container_id);
        alert(id);
    }
</script>
<div id="form_container">
    <form>
        <input type="text" />
        <input type="button" value="submit" />
    </form>
</div>

我试图在“page.php”中调用“call.popup(container_id)”函数,该函数在“form.php”中定义。当我点击“点击此链接!”如果没有找到call_popup('form_container'),那么它会给出错误标记!

我哪里出错了?

4 个答案:

答案 0 :(得分:1)

将JavaScript代码放在不同的文件中 - 例如file.js

head部分的<{1}}部分中,将此文件包含在您希望使用代码的所有HTML文件中:

<!DOCTYPE  HTML>
<html>
    <head>
        <script type="text/javascript" src="file.js"></script>
    <head>
    <body>
        <a href="#" onclick="call_popup('form_container')">Click this link!</a>
    </body>
</html>

将客户端代码(JavaScript)与服务器端代码(PHP)分开是更好的做法。

答案 1 :(得分:0)

您需要在“page.php”的开头添加:

require_once("form.php");

但我不确定它是否适用于JavaScript函数..

尝试创建一个JavaScript文件“file.js”,并在两个PHP文件中引用它:

<script src="file.js" type="text/javascript" />

答案 2 :(得分:0)

而不是使用

require 'form.php';

php代码中使用

include ()

答案 3 :(得分:0)

我刚刚在我的本地XAMPP上测试了你的设置并且它有效(尽管混合JavaScript和HTML代码并不是最好的做法)。你确定“要求”电话有效吗?您是否在浏览器中看到“form.php”中定义的表单?

也许你只是弄错了“form.php”的路径并且在服务器上禁用了PHP错误消息(在生产环境中并不常见)。在这种情况下,PHP会因为丢失文件而死亡,但不会抛出任何出错的消息......