Ergebnis 1 bis 2 von 2

Thema: ajax Post $_POST wird nicht übergeben

  1. #1
    Benutzer
    Registriert seit
    31.10.2012
    Beiträge
    66

    ajax Post $_POST wird nicht übergeben

    Ich möchte einen $_POST - Wert mit input arrays durchführen, dazu nutze ich serializeJSON(); Das Problem: POST-Werte werden nicht übergeben. Kann mir jemand dabei weiterhelfen?

    PHP-Code:
    //check_if_available.php
    <?php
               
                $json 
    json_encode($_POST);
               
                die(
    $json);
    ?>
    index.php
    <?php
             
             
              
    if($this -> out['verfuegbarkeit_nur_in'] == "ja") {

              echo 
    "<div class=\"eigenschaftKategorie\"><span class=\"glyphicon glyphicon-menu-down\"></span> Verfügbarkeit prüfen</div>";

              echo 
    "<div class=\"eigenschaftSelect\">";
          
              echo 
    "<div class=\"verfuegbarkeit-layer\"><input type=\"text\" class=\"verfuegbarkeit\" name=\"verfuegbarkeit\" placeholder=\"Ihre Postleitzahl\" /> <button type=\"button\" class=\"btn btn-default checkifavailable\">Verfügbarkeit prüfen</button></div>";
          
              echo 
    "</div>";
              
              foreach(
    $this -> out['verfuegbarkeit_in_region'] as $region_id) {
              
              echo 
    "<input class=\"verfuegbarkeit\" type=\"hidden\" name=\"region_id[]\" value=\"".$region_id."\" />";
              
              }
              
              }


             
    ?>
          <script type="text/javascript">     
          
          $('.checkifavailable').click(function() {
             
            var available = $(' input.verfuegbarkeit').serializeJSON();
                
            var json = JSON.stringify(available);
                     alert(json)   // gibt einen String mit Daten aus z.B.{"verfuegbarkeit":"70000","region_id":["1"]}    
                      $.ajax({
                          url: "check_if_available.php",
                          type: "POST",
                  contentType: "application/json; charset=utf-8",
                  dataType:"json",
                          data: json
                      }).done(function(data){
                
       
              alert(data); // ist leer
      
                });
          
          });
          
          </script>

  2. #2
    Benutzer
    Registriert seit
    31.10.2012
    Beiträge
    66

    gelöst, so gehts

    PHP-Code:
    //
    <?php
                $arr 
    $_POST['data'];
                
    $out json_decode($arr);
                
    $data = (array)$out;
                die(
    json_encode(array('item' => $data['verfuegbarkeit'])));
    ?>


    <?php
             
             
              
    if($this -> out['verfuegbarkeit_nur_in'] == "ja"):
              
              echo 
    "<div class=\"col-xs-12 col-sm-12 col-md-8 col-lg-8\">";
              
              echo 
    "<div class=\"eigenschaftKategorie\"><span class=\"glyphicon glyphicon-menu-down\"></span> Verfügbarkeit prüfen</div>";

              echo 
    "<div class=\"eigenschaftSelect\">";
          
              echo 
    "<div class=\"verfuegbarkeit-layer\">";
              
             
              
              echo 
    "<input type=\"text\" class=\"verfuegbarkeit\" name=\"verfuegbarkeit\" placeholder=\"Ihre PLZ\" /> <button type=\"button\" class=\"btn btn-default checkifavailable\">Verfügbarkeit prüfen</button></div>";
          
              foreach(
    $this -> out['verfuegbarkeit_in_region'] as $region_id) {
              
              echo 
    "<input class=\"verfuegbarkeit\" type=\"hidden\" name=\"region_id[]\" value=\"".$region_id."\" />"
              
              }    
              
              echo 
    "</div>";
          
              echo 
    "</div>";
              
              echo 
    "</div>";
              
              
              
              


             
    ?>
          <script type="text/javascript">
          
          $( document ).ready(function() {
          
          $(":submit").removeClass('saveButton').addClass('checkbeforebuy');
          
          $(":submit").text('x nur begrenzt Verfügbar');
          
              
          
          $('.checkifavailable').click(function() {
             
            var available = $(':input.verfuegbarkeit').serializeJSON();
                
            var dataJson = JSON.stringify(available);
                              alert(dataJson)
                    $.ajax({
                        url: "check_if_available.php",
                        type: "POST",
                data: {data : dataJson},
                dataType:"json"
                        
                    }).done(function(data){
              
              $(":submit").addClass('saveButton');
              
              $(":submit").text('in den Warenkorb');
               
              alert(data.item);
      
                });
          
          });
          
          });
          
          </script>
             
          <?php endif; ?>

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •