如何从javascript函数执行php?

时间:2012-02-08 12:41:04

标签: php javascript

我如何从javascript函数执行php脚本?

<?php if ( isset( $results['errorMessage'] ) ) { ?>
    <script type="text/javascript>somemethod(<?php echo $results['errorMessage'] ?>)    </script> 
<?php } ?>

抱歉格式错误 - 不确定如何在此编辑器中使用代码:S

5 个答案:

答案 0 :(得分:1)

您需要从JavaScript发出HTTP REQUEST以调用远程PHP页面/脚本。

你根本无法做到这一点。

答案 1 :(得分:1)

你不能! Javascript在客户端(即客户端的浏览器)上执行,PHP在服务器上执行。

您可以做的是向PHP脚本发出Ajax请求,并根据结果执行某些操作。

答案 2 :(得分:0)

我用这个用javascript发送请求,它的工作完美:

function httpGet(theUrl)
{
        var xmlHttp = null;

        xmlHttp = new XMLHttpRequest();
        xmlHttp.open( "GET", theUrl, false );
        xmlHttp.send( null );
        alert(xmlHttp.responseText);
}

和html代码:

<html>
<head>
<script type="text/javascript" src="log.js"></script>
</head>
<body>
        <a href="" onclick="httpGet('message.php?url=http://bizzare.com/?id=1')">Get Message</a>
</body>
</html>

答案 3 :(得分:0)

如果这是模板的一部分,您的示例只需要调整以在页面上生成正确的JavaScript:

要修复此示例,您可以尝试

<?php if ( isset( $results['errorMessage'] ) ) { ?>
    <script type="text/javascript>
        somemethod(<?php echo "'" . $results['errorMessage'] . "'" ?>);
    </script> 
<?php } ?>

但正如其他答案所暗示的那样,最好沿着阿贾克斯路线走下去。生成JavaScript通常是一个糟糕的设计选择。

答案 4 :(得分:0)

您是否正在尝试使用消息调用简单的JS函数?

<?php 
   if(isset($results['errorMessage'])){
      echo '<script type="text/javascript>somemethod("'.$results['errorMessage'].'")</script>';
   }
?>
相关问题