如何使用php和dreamweaver将我手机上运行的mysql服务器连接到我的mac?

时间:2015-04-19 00:29:19

标签: php android mysql macos phpmyadmin

我的应用名为" Servers Ultimate Pro"在我的root手机上。

我创建了一个MySQL,PHP和PHPMyAdmin,用于远程连接的Web服务器,以及用于测试它的webdav服务器。

我使用Dreamweaver在我的mac上连接到它,它将php文件同步到我的手机。

在PHPMyAdmin中,我创建了数据库serverdata和表users

我想知道如何将手机上的MySQL数据库连接到数据库。

我正在尝试创建一个登录系统。

On' servers ultimate pro',mysql地址为192.168.x.xx:3306。

当我创建从手机连接到我的mac的MySQL数据库的函数时,我的问题是PHP。

有一件事,我的Mac上没有root访问权限,我不能这样做,所以我用手机作为服务器来托管它,但我想学习如何将PHP连接到MySQL。

3 个答案:

答案 0 :(得分:0)

您可以在应用程序中创建一个数据库类(如下面提供的那样)并创建一个新的db对象。首先定义连接参数,然后创建一个新的db对象。

define('DB_HOST', 'host');
define('DB_NAME', 'db name');
define('DB_USER', 'user name');
define('DB_PASSWORD', 'password');



 $db = new DatabaseService();

数据库类如下

  class DatabaseService {

//construct the connection
public function __construct() {
  $this->conn = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
  if ($this->conn->connect_errno){
    echo "Failed To Connect to MySQLi: " . $conn->connect_error;
  }
}

//Run a mysqli query with the entered string
public function execute_query($qry) {
  $result = $this->conn->query($qry);

  if ($this->conn->error) {
      try {    
          throw new Exception('MySQL error' .  $this->conn->error . '<br> Query:<br>' . $qry . ', ' . $this->conn->errno);    
      } catch(Exception $e) {
          echo "Error No: ".$e->getCode(). " - ". $e->getMessage() . "<br >";
          echo nl2br($e->getTraceAsString());
      }
  } else {
    return $result;
  }
}

// Execute query and return assoc array
public function execute_assoc_query($qry) {
  $rows = array();
  if($result = $this->execute_query($qry)) {
    while ($row = $result->fetch_assoc()) {
      $rows[] = $row;
    }
    return $rows;
  } else {
    return null;
  }
}

// Return ID of newly inserted item
public function execute_query_id($qry) {
  $this->execute_query($qry);
  return $this->conn->insert_id;
}
}

然后可以通过调用db并传递查询字符串来使用它。

$users = $db->execute_assoc_query('SELECT * FROM users');

有关更多信息,我建议您阅读mysqli php mysqli

上的php文档

答案 1 :(得分:0)

我发现了我做错了什么。我使用的是错误的测试服务器。我本应该使用RDS服务器而不是webDAV服务器。

答案 2 :(得分:0)

这是因为mysql默认安全设置。用户root仅限于在localhost中登录。所以你要做的是:

1,使用在 PHONE 中运行的任何mysql客户端 2,以root身份登录 3,更新mysql.user set host =&#39;%&#39;其中user =&#39; root&#39 ;; 4,FLUSH PRIVILIGE

这将允许root用户可以从您的电脑上登录。