не может требовать - PullRequest
       30

не может требовать

0 голосов
/ 22 января 2012

Я борюсь с пост-вызовом Jquery, который возвращает неожиданный токен SyntaxError, если я пытаюсь требовать_концепции необходимых файлов для создания экземпляра объекта php и получения свойства этого объекта.Что странно, так это то, что он работает на моем удаленном сервере, а не на моем локальном тестовом сервере.Вот код:

Часть php-файла, вызывающая вызов Jquery:

   <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);

?>

Если я закомментирую требование один раз и установлю $ custRefEmail = $ customer_ref_id, он возвращаетID, который был отправлен функцией post.Таким образом, данные попадают туда в порядке.Все это терпит неудачу, когда я пытаюсь включить любой файл ... ???И да, я потратил часы на это поиск в Google и посмотрел здесь на всевозможные вопросы .... Я обращаюсь за помощью ...

1 Ответ

0 голосов
/ 22 января 2012

Вы должны запустить phpinfo ();чтобы увидеть, что обе версии PHP включают поддержку JSON и все остальные необходимые библиотеки.

Затем я дважды проверю, чтобы убедиться, что файл находится в каталоге, который просматривается.В данном случае это папка дедушки (../../file.php).

Затем я создал бы пару файлов, чтобы посмотреть, смогу ли я заставить работать функции include / require_once.

Иногда работая с удаленным / локальным, вы можете легко запутаться.Только сегодня я редактировал локальную копию файла и рвал на себе волосы, потому что в удаленном файле не было никаких изменений!

...