2017-06-07 2 views
1

Ich arbeite an einer Funktion, die PHP mit Ajax aufrufen und einige Werte abrufen muss. Wie auch immer ich meine JS-Funktion Teil unten posten werde.PHP sagt Undefiniert, auch wenn es im AJAX-Aufruf klar definiert ist?

JavaScript

$.ajax({ 
     type: "POST", 
     url: 'php/getAccountJobs.php', 
     ContentType:"application/json", 
     dataType:'json', 
     data:{email:$.cookie("email")}, 
     success : function(arr) 
     { 
      for(var i=0 ; i<parseInt(response); i++) // number of jobs are the response we use there 
      { 
       var jobmsg = arr[2*i] ; 
       var imgurl = arr[2*i+1]; 
       $.ajax({ 
         type: "POST", 
         url: "php/addDivAccountJobs.php", 
         dataType:'json', 
         data: {imgURL:imgurl,message:jobmsg}, 
         }).done(function(html){ alert(html);}); 
      } 
     } 
     }); 

So überprüfte ich das Konsolenprotokoll und sah dies folgenden Fehler.

Also was ich dachte, war, Isset-Funktion zu verwenden, um zu testen, ob imgURL Wert festgelegt wird oder nicht.

PHP

<?php 
session_start(); 
if(isset($_POST["imgURL"]) && isset($_POST["message"])) 
{ 
    $username = $_SESSION["firstname"]." ".$_SESSION["lastname"]; 
    $imgurl = $_POST["imgURL"]; 
    $msg = $_POST["message"]; 
    $fullecho = '<div class="col-md-4"> 
        <div class="profile-card text-center"> 
         <img class="img-responsive"src="'.$imgurl.'"> 
         <div class="profile-info"> 
          <h2 class="hvr-underline-from-center" id="jobOwnerName">'.$username.'</h2> 
          <div id="jobMessage">'.$msg.'.</div> 
         </div> 
        </div> 
       </div>'; 
    echo json_encode($fullecho); 
    die(); 
} 
else 
    echo json_encode("error"); 
?> 

wie ich erwartet hatte, was erhielt ich war in Warnmeldung Fehlermeldung.

Mein Problem

Ich ging durch jede Stack Frage und versuchte, den Grund zu finden und zu beheben. aber keine dieser Lösungen gab mir eine richtige Antwort. Kann mir bitte jemand helfen, das Problem zu finden?

+0

@farthadamjady Oh yeah.Now ich habe versucht zu sehen, welche Ausgabe von diesem kommt. und ich habe einen undefinierten Wert gefunden. Kannst du es als Antwort posten? es würde einer anderen Person helfen. – sam1234

+0

Ich würde versuchen, 1 Anruf zu machen und 1 Antwort zu bekommen. Verschachtelte Aufrufe an denselben Server scheinen unnötig zu sein. – James

+0

@ Sam1234 natürlich! – farhadamjady

Antwort

0

Wenn Ihre JSON-Eigenschaft einen nicht definierten Wert hat, verschwindet sie vollständig von JSON. also, weil arr [2 * i] oder arr [2 * i + 1] irgendwo undefinierten Wert in der Schleife

+0

Vielen Dank. – sam1234

Verwandte Themen