2015-09-22 17 views
14

Sto usando laravel 5 e cercando di ottenere tutti gli input di variabili POST controller come questo-come ottenere Tutti gli input del POST in laravel 5

public function add_question() 
{ 
    return Request::all(); 
} 

Quindi, sto ottenendo questo errori:

enter image description here

Cosa sto facendo male?

+0

Qual è il problema? – Cyrbil

+0

Metodo non statico Illuminate \ Http \ Request :: all() non deve essere chiamato staticamente, assumendo $ dal contesto incompatibile –

risposta

4

È necessario utilizzare la facciata anziché Illuminate\Http\Request. Importarlo nella parte superiore:

use Request; 

E assicurarsi che non sia in conflitto con l'altra classe.

+5

Wrong! Restituirà anche le variabili GET. – barbushin

+1

@barbushin La domanda era come recuperare le variabili POST. Non ho mai detto che non recuperi anche le variabili GET. Leggi gentilmente prima di commentare, e non essere un asino. –

+1

Se sarà richiesta GET, quindi 'return Request :: all();' restituirà le variabili GET. – barbushin

17

Prova questo:

use Illuminate\Support\Facades\Request; 
public function add_question(Request $request) 
{ 
    return $request->all(); 
} 
+5

Sbagliato! Restituirà anche le variabili GET. – barbushin

+2

@barbushin, Se tutte le risposte qui sono errate, fornire una risposta CORRETTA qui. –

0

suo meglio usare la dipendenza piuttosto che attache alla classe.

public function add_question(Request $request) 
{ 
    return Request::all(); 
} 

o se si preferisce utilizzare il metodo di utilizzo variabile

public function add_question(Request $input) 
{ 
    return $input::all(); 
} 

è ora possibile utilizzare il metodo di richiesta globale fornito da laravel

request() 

ad esempio per ottenere il first_name di un ingresso modulo .

request()->first_name 
// or 
request('first_name') 
2

Per coloro che sono venuti qui in cerca di "come ottenere Tutti gli input del POST" solo

classe Illuminate\Http\Request estende da Symfony\Component\HttpFoundation\Request che ha due variabili di classe che memorizzano i parametri di richiesta.

public $query - per i parametri GET

public $request - per POST Parametri

Usage: Per ottenere un dato pubblicare solo

$request = Request::instance(); 
$request->request->get('my_param'); 

Fonte here

-1

dovrebbe essere almeno questo:

public function login(Request $loginCredentials){ 
    $data = $loginCredentials->all(); 
    return $data['username']; 
} 
0

si può utilizzare

$params = request()->all(); 

senza

import Illuminate\Http\Request O

use Illuminate\Support\Facades\Request o altro.

Problemi correlati