困惑放置php文件的位置(laravel 5.3)

时间:2017-05-31 15:42:08

标签: php laravel

我必须为我的应用程序实现文本消息功能我有一个php文件,我从服务提供商处获取需要放置db details.and给它的服务提供者添加到服务器的路径。我很困惑在哪里放置并根据他,如果我在URL中给出该文件路径它应该返回联系人号码和消息正文但我无法测试它。

脚本看起来像

    <?php
    //  MySQL table outbox:
    // CREATE TABLE outbox(sender VARCHAR(255), rcpt VARCHAR(255), body VARCHAR(255));
    $mysql_host = "localhost";


    $mysql_base = "school_laravel";

    $mysql_user = "root";

    $mysql_password = "";

    $table = "outbox";

    mysql_connect($mysql_host, $mysql_user, $mysql_password);
    mysql_select_db($mysql_base);

    mysql_query("LOCK TABLES $table WRITE, $table AS $table" . "_read READ");

 $get_query = "SELECT * FROM $table AS $table" . "_read";
 $del_query = "DELETE FROM " . $table;
 if ($_GET['device'] != '') {
  $suffix = " WHERE sender='" . $_GET['device'] . "'";
     $get_query .= suffix;
  $del_query .= suffix;
 }
 $result = mysql_query($get_query);
    echo '<messages>';
    while ($array = mysql_fetch_array($result)) {
  echo '<message msisdn="' . $array['rcpt'] . '">' . $array['body'] . "</message>\n";
 }
 mysql_query($del_query);
 mysql_query("UNLOCK tables");
    echo '</messages>';
?>

我的问题是,我应该将它放在laravel目录中,是否可以获得表格详细信息,因为我在上面的脚本中提到了数据库详细信息。

感谢您的帮助

1 个答案:

答案 0 :(得分:4)

即使它为您节省了一分钟,我也不会在您的网站上使用该代码。除非你重写它,否则很难在Laravel网站上使用。如果你不得不重写它,也许你可以用Laravel的方式来做。

您所拥有的脚本看起来很容易重写。此代码未经测试。我不希望将其复制并粘贴到您的应用程序中并使其无需修改即可运行,但这是基本步骤。

第1步 - Create a Model for your table.

应用/ Outbox.php

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Outbox extends Model
{
    /**
     * The table associated with the model.
     *
     * @var string
     */
    protected $table = 'outbox';

}

第2步 - Create a controller

应用/ HTTP /控制器/ MessagesController.php

<?php

namespace App\Http\Controllers;

use App\Outbox;
use Illuminate\Http\Request;

class MessagesController extends Controller
{
    /**
     * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
     */
    public function show($sender)
    {

        $messages = Outbox::where('sender', $sender)
                      ->firstOrFail();

        $ids_to_delete = $messages->pluck('id');

        Outbox::destroy($ids_to_delete);

        return view('messages')
                 ->with('messages', $messages);;
    }
}

第3步 - Create a view

<强>资源/视图/ messages.blade.php

<!DOCTYPE html>
<html lang="en">
  <head>
      <title>
          laravel.com
      </title>
  </head>
  <body>
    <div>
      <messages>
        @foreach($messages as $message)
          <message msisdn="{{ $message->rcpt }}">{{ $message->body }}</message>
        @endforeach
    </div>
  </body>
</html>

第4步 - Add a route for your new controller

应用/路由/ web.php

Route::get('messages/{sender}', 'MessagesController@show');

第5步 - 访问新网址

http://localhost/messages/device

设备$_GET['device']的原因。