Ankündigung

Einklappen
Keine Ankündigung bisher.

Larvel 5.2 und JS ajax request

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Larvel 5.2 und JS ajax request

    Grüß Euch,

    Ich komme einfach nicht weiter. Dem ajax request wird einfach nicht die richtige URL übergeben.

    Mein JS Code:
    Code:
        self.load = function() {
            var id = self.countryid();
            $.ajax( {
                url: 'admin/getholidays/' + id,
                type: 'get',
                dataType: 'json',
                success: function(data) {
                    self.originalholidays.removeAll();
                    self.holidays.removeAll();
                    self.tobeadded.removeAll();
                    self.toberemoved.removeAll();
                    self.update(data);
                },
                error: function( jqXhr, textStatus, errorThrown ){
                        console.log( errorThrown );
                }            
    
    
            });        
        }
    Die Route:

    PHP-Code:
    Route::group(['prefix' => 'admin'], function() {
          
    Route::get('/getholidays/{country?}''CountryController@get');

    }); 
    Im JS console log sehe ich dann folgendes:

    GET http://localhost/calendar/public/adm...=1484832778812 404 (Not Found)


    Kann mir bitte jemand sagen was ich da falsch mache?

    Danke,
    Reinhard

  • #2
    Warum /calendar/public?

    Ich würde dir übrigens empfehlen immer mit absoluten Pfaden zu arbeiten.

    Kommentar


    • #3
      Der Grund liegt darin begründet, daß Laravel aus sicherheitsgründen nur auf public - Verzeichnis zulässt.

      Dir bleibt somit nur 2 Möglichkeiten

      1. Anpassen der htaccess .... oder
      2. als url "http:\\<mydomain>/public/admin/getholidays/" + id setzen

      Aus diesem Grund müssen auch das css, image, und js im public verzeichnis liegen

      Kommentar


      • #4
        Ich habs gefunden:

        Die Route stimmte nicht. Sie muss so aussehen:
        Route::get('addtocountry/getholiday/{country}', 'CountryController@get');

        Der erste Parameter ist entscheidend.

        Nun funktioniert auch
        $.ajax( {
        url: 'getholiday/' + id;

        Grüße,
        Reinhard

        Kommentar


        • #5
          Das macht doch überhaupt keinen Sinn. Sprich das doch mal aus:

          add to country, get holiday by country

          Was jetzt? Zu einem Land hinzufügen oder Feiertag eines Landes holen?

          Kommentar


          • #6
            Zitat von reinhardp Beitrag anzeigen
            Ich habs gefunden:

            Die Route stimmte nicht. Sie muss so aussehen:
            Route::get('addtocountry/getholiday/{country}', 'CountryController@get');

            Der erste Parameter ist entscheidend.

            Nun funktioniert auch
            $.ajax( {
            url: 'getholiday/' + id;

            Grüße,
            Reinhard
            Außer das ich hellbringer zustimmen muss, glaub ich nicht das dein Script funktioniert, denn

            1. Dein im Anfangspost angegebenen Route ist korrekt. Er würde dann lauten url auf admin/getcountry optional mit oder ohne einem Parameter
            2. In deinem 2ten Thread sind deine urls unterschiedlich zwischen ajax und Route

            Kommentar


            • #7
              Doch es funktioniert nun.

              addtocountry ist der view der aufgerufen wird
              getholiday/{country} ist dann die eigentliche PHP Methode die via ajax aufgerufen wird.

              Kommentar

              Lädt...
              X