2017-05-17 2 views
1

ich weiß, diese Frage sieht aus wie ein leicht und fragte viele Male unter Verwendung einen variablen, aber ich versuchte, die alles mögliche Lösung und nichts scheint zu funktionieren. Bitte markieren Sie dies nicht als Duplikat, bis eine Lösung gefunden wurde. Also hier ist das Problem, Ich habe eine Variable $ msg_body in Tabloader-Funktion definiert. Ich möchte es in tabloader1 Funktion verwenden, die in der gleichen Steuerung ist.in einer anderen Funktion von demselben Controller Laravel

hier ist der Code und alle Lösungen, die ich versuchte, unten ist meine tabloader Funktion

public function tabloader(Request $request){ 
    $msg_body= Message::where('id', $request->id)->value('body'); 
    $msg_topic= Message::where('id', $request->id)->value('topic'); 

    $this->tabloader1($msg_body); 
    //$name = $request->$msg_body; 
    //$a = new RtrController(); 
    //$a->tabloader1(); 
    //Session::put('key', $msg_body); 
    //$response = Response::make('Hello World'); 
    //return $response->withCookie(Cookie::make('name', 'value', $msg_body)); 



    //DB::table('sendmessages')->insert(array('body1'=>$msg_body, 'phone_nos'=>'1111')); 
    //foreach($item_nos as $item_no) 
    //Sendmessage::insert(array('body1'=>$msg_body, 'phone_nos'=>'1234')); //'phone_nos'=>$item_no 
    //endforeach 

    //return view('adminCenter',compact('prod')); 

} 

und unten ist meine tabloader1 Funktion

public function tabloader1($msg_body){  

    $prod=Message::get()->all(); 

    $item_nos=DB::table('items')->pluck('phone_no'); 
    //dd($item_nos); 

    $item_ids=DB::table('items')->pluck('id'); 
    //$name = Session::get('key'); 
    //$value = Cookie::get('name'); 

    //Sendmessage::create(array('body1' => $value,'phone_nos' => '11113')); 

    DB::table('sendmessages')->insert(array('body1'=>$msg_body, 'phone_nos'=>'1111')); 
    //foreach($item_nos as $item_no){ 
     //foreach($item_ids as $item_id){ 
      //DB::table('sendmessages')->whereId($item_id)->update(array('phone_nos'=>$item_no)); 
      //DB::table('sendmessages')->insert(array('body1'=>$msg_body, 'phone_nos'=>'1111')); 





    return view('adminCenter',compact('prod')); //here i want it to return to .. know the syntax? no 

} 

ich diese Variable verwende es einzufügen in eine Tabelle sendmessages

und der Fehler ist "in tabloader1 Funktion fehlt das Argument 1." Ich habe verschiedene Lösungen ausprobiert, wie Sie die kommentierten Zeilen im Code sehen können. wirklich gehofft, für eine Lösung, Dank

+0

hier die msg_body Var_dump Put vor tabloader1 Anruf. – calexandre

+0

Stellen Sie sicher, dass die Nachricht vorhanden ist und dass '$ msg_body' nicht leer ist, bevor Sie anrufen' tabloader1' – aynber

+0

'dd' Ihre' $ msg_body' – Rezrazi

Antwort

0

try this:

public function tabloader(Request $request){ 
    $msg_body= Message::where('id', $request->id)->select(['body'])->first(); 
    $msg_topic= Message::where('id', $request->id)->select(['topic'])->first(); 

    return $this->tabloader1($msg_body); 
} 


public function tabloader1($msg_body=''){ // '' if empty  
    . 
    . 
    return view('adminCenter',compact('prod')); //here i want it to return to .. know the syntax? no 
} 
+0

ich das Problem des Erhaltens der Variable aus tabloader fn gelöst haben, habe ich den Befehl insert setzen die $ msg_body in tabloader1 fn verwendet, die perfekt ausgeführt wird. aber immer noch bekomme ich den Fehler, dass Argument 1 fehlt. –

+0

@PuneetNaik Dieser Code Änderung verwendet einen Standardwert für den Nachrichtentext Parameter, so würden Sie nicht diesen Fehler erhalten. Haben Sie eine andere Funktion namens tabloader1 in Ihrer Anwendung? –

+0

Argument 1 fehlt ..wo? Was ist Klassenname ..? Was ist die Zeilennummer? –

Verwandte Themen