2016-04-14 18 views
-1

Ich habe ein CodeIgniter-Benutzer-Panel und ein Login-Formular aus der CodeIgniter-Umgebung und ich muss wissen, wie ich den Beitrag, der von diesem kommt, akzeptieren kann.Akzeptiere POST aus einer anderen Anwendung

Grundsätzlich ist:

Meine app eine POST mit (anmelden ein Passwort) CodeIgniter Bewerbung erfolgreich melden Sie sich an.

Obs: Ich las über CrossDomain POST mit AJAX, funktioniert aber nicht.

Ich habe versucht, dieses:

$("form").submit(function() { 
     $.ajax({ 
      url: 'http://localhost/cp/login/auth', 
      type: 'POST', 
      crossDomain: true, 
      data: {login: $('#login').val(), passwd: $('#passwd').val()},    
     }) 
    }); 

Aber wenn ich in Submit-Button klicken, I Weiterleitungsseite (CI) anzumelden, aber melden Sie sich nicht in

ich Ihre Geduld zu schätzen wissen.. Vielen Dank!

+0

bitte teilen Sie etwas, was Sie bisher versucht haben, um ein klares Bild von Ihrer Anforderung zu bekommen! –

+0

die Frage ist nicht klar, und ist zu einem gewissen Grad mehrdeutig. Kannst du bitte den Zweck erklären, wie viele Server hast du und was willst du erreichen? Wenn Sie so bleiben - Sie werden Down-Stimmen haben, da die Frage nicht klar ist. – Farside

Antwort

0

Fügen Sie diesen Header zu Ihrer Seite hinzu. (http://localhost/cp/login/auth Seite)

header('Access-Control-Allow-Origin: *'); 
+0

Ich benutze diese Überschrift, aber nach dem Klicken in Senden Schaltfläche, noch Umleitung auf Login-Seite und nicht einloggen. – Peter

+0

Ich verstehe nicht, was Sie meinen, können Sie mehr Code hinzufügen oder senden Sie mir eine Test-URL. –

0

Sagen Sie Nein für Crossdomain Ajax. Senden Sie Daten mit Post. Und in Ihrer Anwendung überprüfen Sie Daten und Login-Benutzer oder Redirect zurück, wenn Fehler hat.

0

Ich glaube, dass Sie versuchen, Daten von Ajax zu einer Codeigniter-Funktion per Post zu senden. Dann sollten Sie dies tun:

function makeAjaxCall(){ 
$.ajax({ 
    type: "post", 
    url: '<?php echo base_url(); ?>" + "MyController/Myfunction', 
    cache: false,    
    data: $('#MyForm').serialize()});  } 

Die Form sollte als

<form name="MyForm" id="MyForm" action=""> 

Absenden-Button als

<input type="button" onclick="makeAjaxCall();" value="Submit"/> 

dann auf dem Controller

class MyController extends CI_Controller{ 
public function Myfunction(){ 
    $username = $this->input->post('username_field'); 
    $password = $this->input->post('password_field'); 
    //Do my stuff then redirect 
}} 

Hoffnung, die hilfreich ist .

0

Hallo zu bekommen Informationen aus anderen Login-App, müssen Sie ein Web Service machen oder mit curl

davon aus, dass Sie App, die Login machen und Daten zurückgeben adaequat

in der anderen App, die Sie benötigen um einen Anruf mit curl wie

// create curl resource 
    $ch = curl_init(); 

    // set url 
    curl_setopt($ch, CURLOPT_URL, "username:[email protected]/controller/method/parm1/param2"); 

    //return the transfer as a string 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

    // $output contains the output string 
    $output = curl_exec($ch); 

    // close curl resource to free up system resources 
    curl_close($ch); 

    //print result 
    var_dump($output); 
Verwandte Themen