【问题标题】:I have a laravel website that is connected to phpmyadmin but now I want to connect android app to same database我有一个连接到 phpmyadmin 的 laravel 网站,但现在我想将 android 应用程序连接到同一个数据库
【发布时间】:2017-11-30 13:49:32
【问题描述】:

我用 laravel 创建了一个网站,用户可以在其中注册、发布、上传等,它都存储在 phpmyadmin 中。现在我想创建一个应用程序,管理员可以在其中访问存储在 phpmyadmin 中的所有数据。在将网站和应用程序连接到同一个数据库之前,我没有尝试过,所以这对我来说是新的。当我尝试从(在创建应用程序之前使用 POSTMAN 测试)插入数据时,我收到消息“未找到” ,你能告诉我我在做什么错吗?

connection.php 类

 <?php

    define('hostname','localhost');
    define('user','root');
    define('password','');
    define('databaseName','socialmedia_website');

    $connect = mysqli_connect(hostname,user,password,databaseName)

    ?>

InsertData.php 类

<?php

if($_SERVER["REQUEST_METHOD"]=="POST"){
    require 'connection.php'
    createUser();

}

function createUser()
{

    global $connect;

     $name = $_POST["name"];

     $email = $_POST["email"];

     $password = $_POST["password"];


     $query = "Insert into user(name,email,password) values ('$name','email','password');";

     mysqli_query($connect,$query) or die(mysqli_error($connect));
     mysqli_close($connect);
}

Here is a screenshot of the database

【问题讨论】:

  • 在一个或多个控制器中处理请求并在 api.php 中定义路由(如果 Laravel 5.3+)
  • 我认为您需要 API 来与该数据库进行通信
  • 您的数据永远不会存储在 PhpMyAdmin 中,它存储在数据库中,PhpMyAdmin 只是一个基于 Web 的 sql 客户端。您想要的是将数据插入数据库..
  • @ka_lin 是的,我正在使用 laravel 5.4
  • @Ian 那么保存在 PhpmyAdmin 中的数据保存在哪里呢?保存在什么数据库中,它必须保存在某个地方

标签: php android mysql laravel phpmyadmin


【解决方案1】:

PHPMyAdmin 只不过是 MySQL 服务器的前端。

在您的 laravel 应用中,您需要创建您的应用可以调用的 URL API 端点。在 Laravel API 控制器中调用数据库,然后以 JSON 格式返回数据。

【讨论】:

  • 是否有可以遵循这种方法的指南或文章?
  • 对于 Laravel?大概。查找 laravel API 控制器示例!在控制器中,只需调用您的数据库,获取结果,然后 json_encode 数组,标头 Content-Type 为 application/json,回显您的 JSON 字符串,然后 die();
【解决方案2】:

使用 JDBC Driver jtds 1.3.1.jar 或任何最新版本也可以直接连接。我用它来将我的 android 应用程序连接到 SQL 数据库并执行 CRUD 操作 这是连接字符串 `

public class ConnectionClass {
    String ip = "xxxxxxxx";
    String classs = "net.sourceforge.jtds.jdbc.Driver";
    String db = "xxxx";
    String un = "xxxxx";
    String password = "xxxxx";

    @SuppressLint("NewApi")
    public Connection CONN() {
        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
                .permitAll().build();
        StrictMode.setThreadPolicy(policy);
        Connection conn = null;
        String ConnURL = null;
        try {

            Class.forName(classs);
            ConnURL = "jdbc:jtds:sqlserver://" + ip + ";"
                    + "databaseName=" + db + ";user=" + un + ";password="
                    + password + ";";
            conn = DriverManager.getConnection(ConnURL);
        } catch (SQLException se) {
            Log.e("ERROR", se.getMessage());
        } catch (ClassNotFoundException e) {
            Log.e("ERROR", e.getMessage());
        } catch (Exception e) {
            Log.e("ERROR", e.getMessage());
        }
        return conn;
    }
}

`

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-21
    • 2018-12-20
    • 2021-09-10
    • 1970-01-01
    • 2015-09-07
    • 2015-09-08
    • 2014-11-15
    • 1970-01-01
    相关资源
    最近更新 更多