Laravel - 过滤以前返回的结果

时间:2016-02-14 14:29:50

标签: laravel laravel-5

我有一个带有表单的页面,可以让您选择我已记录数据的练习。当您提交表单时,它在我的LogController中使用getExerciseLog方法获取输入名称,并从数据库中获取该练习的所有实例并将其显示在表中。该表显示正常,但现在我需要使用选择字段按最新和最旧等过滤这些。

我已为此创建了表单,该表单发布到"过滤器" LogController中的方法。到目前为止,我有这段代码:

<?php
    $name = $_REQUEST['name'];
    $contact = $_REQUEST['contact'];
    $email = $_REQUEST['email'];

    $servername = "localhost";
    $username = "root";
    $password = "";
    $dbname = "mydb";

    $conn = mysqli_connect($servername,$username,$password,$dbname);

    $sql = "INSERT INTO candidates(

    full_name,  
    contact,
    email)
    VALUES(
    '$name',
    '$contact',
    '$email')";

    if (mysqli_query($conn, $sql)) 
    {
        echo "New record created successfully";
    } 
    else 
    {
        echo "Error: " . $sql . "<br>" . mysqli_error($conn);
    }

    $conn->close();
?>

显然这还没有结束,因为我一直坚持如何回到“日志”中。查看结果已过滤。目前,在过滤方法中,$ exercise_log不会返回任何内容,因为没有设置$ exercise,因为练习输入没有被提交(这是用于选择你想要看的练习的原始选择字段的数据)。

我有什么想法可以让这个工作?是否可以将$ exercise数据从getExerciseLog传递到过滤器日志中,以便我可以在该方法中使用它?

由于

1 个答案:

答案 0 :(得分:1)

推荐的方法是使用Javascript对表进行排序,它避免了需要另一个请求和整页刷新,因此速度更快。

但是在你的情况下你可以像这样

在会话中保存$ excercise
$request->session()->put('excercise', $excercise);

$exercise=session('excercise');

此处的详细信息https://laravel.com/docs/5.2/session#basic-usage