2017-11-27 10 views
0

ビューファイルの値をcodigniterで合計しようとしましたが、コーディングネーターでエラーが発生します メッセージ:extract()は、パラメーター1が配列であることを想定しています。 :未定義の変数は:この場合、T1とT2コントローラーとcodigniterを使用した2つの数値の合計

controller file 

Home.php 
<?php 
    class home extends CI_Controller 
{ 

    public function index() 
    { 
     echo"hello freinds...."; 
    } 
    public function display() 
    { 
    extract($_post); 
    $sum=$t1+$t2; 
    $data=array('sum'=>$sum); 
    $this->load->view('disp',$data); 
    } 
} 

View file 
disp.php 

<html> 
<body> 
<h1>hello it is disply.php</h1> 
<form action="sum" method=post> 
Enter number 1 :<input type=text name=t1> 
<br> 
Enter number 2 :<input type=text name=t2> 
<br> 
<input type=submit value="sum"> 
<?php 
if(isset($_POST['sum'])) 
    { 
?> 
    sum of two number : <?= $sum ?> 
    <?php 
    } 
    ?> 
    </form> 
    </body> 
    </html> 
+0

あなたは '$ _POST'変数の使用を活用する必要があるかもしれません。 – coderodour

+0

未定義の変数:t1にエラーが発生しました –

+0

フォームはコントローラメソッドに送信する必要があります。また、htmlプロパティ値を引用符で囲みます。答えを参照してください。 – commanderZiltoid

答えて

0

$_postは、大文字と小文字が区別命名だから、あなたが代わりに$_POSTを使用する必要が空です。

(...) 
extract($_POST); 
(...) 

例:

var_dump($_post); 
// Output: 
// <b>Notice</b>: Undefined variable: _post in <b>[...][...]</b> on line <b>2</b><br /> 
// NULL 


var_dump($_POST); 
// Output: 
// array(0) { 
// } 
0
Home.php 
<?php 
class home extends CI_Controller 
{ 

    public function index() 
    { 
    echo"hello freinds...."; 
    } 
    public function display() 
    { 

    $data = array(
     'sum' => (isset($_POST['t1']) && isset($_POST['t2'])) 
        ? $_POST['t1'] + $_POST['t2'] : 0 
    ); 
    $this->load->view('disp',$data); 

    } 
} 

View file 
disp.php 

<html> 
    <body> 
     <h1>hello it is disply.php</h1> 
     <form action="/home/display" method="post"> 
      Enter number 1 :<input type="text" name="t1"> 
      <br> 
      Enter number 2 :<input type="text" name="t2"> 
      <br> 
      <input type="submit" value="sum"> 

      <?php if(isset($sum) && $sum != ''): ?> 
       sum of two number : <?php echo $sum; ?> 
      <?php endif; ?> 

     </form> 
    </body> 
    </html> 
関連する問題