在jquery post调用中不能requireonce


cannot require_once in a jquery post call

我正在处理一个Jquery post调用,如果我试图一次性需要所需的文件来实例化php对象并获取该对象的属性,该调用将返回SyntaxError意外令牌。奇怪的是,它似乎在我的远程服务器上工作,但在我的本地测试服务器上不工作。这是代码:

进行Jquery调用的php文件的一部分:

   <script type="text/javascript">   getSelectData()  </script>  
   <!--  Dynamiclygenerate the emailadress for the first referens in the list -->
        <div id="customer_ref_id">
        <label for="customer_name">Kund:</label>
        <p><?php echo $customer->customer_name; ?> </p>
        <a href="#" class="toprghtimg"> <img src="../images/back.png"/></a>
        <p class="instruction">
        Välj Kundreferens i listan nedanför.
        Finns ej din referens så skapa en ny referens knuten till
        kunden genom att klicka på knappen nere till höger.
        </p>
        <div class="clearLeft"></div>
        <label for="customer_ref_id">Kundreferens:</label>
        <select name="customer_ref_id"  id="customer_ref_id">
            <?php
            foreach ($customerRefs as $customerRef) { ?>
            <option value="<?php echo $customerRef->id; ?>">
            <?php echo $customerRef->full_name(); ?>
            </option>
            <?php } ?>
        </select>

     <input type="button" value="Skapa ny Kundreferens" onclick="getNewCustRef()" />
     <div class="clearLeft"></div>
    <div id="customerRefInfo"> <label>E-post:</label><p>-Ej registrerad-</p></div>
    <input type="button" class="after_p" value="Ändra referensens data" onclick="changeRefData()" />
   </div>

这是getNewCustRef()函数:

function getSelectData() {
  var formData = $("#customer_ref_id select").serialize();
        $.ajax({
            url     : 'getSelectData.php',
            type    : 'POST',
            dataType: 'json',
            data    : formData,
            success: function( data ) {
              $('#customerRefInfo p').replaceWith('<p>'+data+'</p>' )  ;
            },
            error: function(XMLHttpRequest, textStatus, errorThrown) {
                alert(errorThrown); }
        });

}

这是getSelectData.php文件,我无法获得它来需要所需的功能文件:

<?php require_once("../../includes/initialize.php");
$customer_ref_id = $_POST['customer_ref_id']; // Selected customer_ref_id
$custRef = CustomerRef::find_by_id($customer_ref_id);
$custRefEmail = $custRef->e_post;
echo json_encode($custRefEmail);
?>

如果我注释掉require一次,并设置$custRefEmail=$customer_ref_id,它将返回post函数发送的id。所以数据会很好地到达那里。当我试图包含任何文件时,一切都会失败???是的,我花了几个小时在谷歌上搜索,并在这里查看了各种问题。。。。我请求帮助。。。

您应该运行phpinfo();看看这两个PHP版本都包括JSON支持和所有其他需要的库。

然后我会仔细检查以确保文件在正在查看的目录中。在这种情况下,它是祖父母目录(../../file.php)。

然后我会创建几个文件,看看是否可以让include/require_one函数工作。

有时在远程/本地工作时,你很容易混淆。就在今天,我正在编辑一个文件的本地副本,因为远程文件没有显示任何更改,我把头发都剪掉了!