簡體   English   中英

如何在外部托管服務器上將android應用程序連接到正在運行的MySQL數據庫

[英]How do I Connect an android application to a running MySQL Database, on an external hosted server

基本上,我一直在進行大量搜索,但仍然沒有找到解決問題的方法。

我試圖將我的應用程序連接到公司在外部服務器上運行和托管的數據庫(我們已經將該數據庫用於在用戶計算機上運行的應用程序)

我想在數據庫中查詢登錄名,以便當用戶在我的應用程序中輸入用戶名和密碼時,它將與數據庫中的詳細信息進行比較,然后進行回復,說明這些憑據是否正確。 ,並允許用戶看到其他頁面,該頁面將從該用戶的數據庫中提取特定詳細信息(但這是我將來需要解決的問題)

目前我的主要問題是,我似乎無法使該應用程序能夠連接到數據庫,目前我正在使用WAMP服務器托管我制作的php文件...

注意:我將使用“用戶”和“密碼”代替我擁有的實際用戶名和密碼

<?php

//connecting
//server, username, password, database

$dbhost = 'external ip entered here';
$dbuser = 'user';
$dbpass = 'pass';
$dbdb   = 'datbasename';

//connect to mySQL 
$connect = mysql_connect ($dbhost,$dbuser,$dbpass) or die("Connection error");

//select the database
mysql_select_db($dbdb) or die ("database selection error");

//Retrieve the login details via POST
$username=$_POST['username'];
$password=$_POST['password'];

//Query the table
$query="SELECT llogint,lpasint FROM TCHAUFF (nolock) 
WHERE llogint='$username' AND lpasint='$password'";

//check if there any results returned
$num = mysql_num_rows($query);

//if a record was found matching the details entered in the query
if($num == 1){
//create a while loop that places the returned data into an array
while($list=mysql_fetch_assoc($query)){

//store the returned data into variable
$output = $list;

//encode the returned data in JSON format
echo json_encode( $output );
//close the connection
mysql_close();
}}
?>

老實說,我認為他們的php文件沒有任何問題,但如果是的話,請糾正我,哈哈!

我遇到的問題是,如果我嘗試通過將WAMP運行該php文件,方法是將該文件放入www文件夾,然后轉到localhost / androidtest.php

我收到一條錯誤消息,警告:mysql_connect():無法建立連接,因為目標計算機主動拒絕了它

我已經嘗試了所有可以找到的解決方案,

將此信息添加到config.inc.php文件中

/* Server: UserSeaCogi[1] */
$i++;
$cfg['Servers'][$i]['verbose'] = 'external database';
$cfg['Servers'][$i]['host'] = 'external ip entered here';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'user';
$cfg['Servers'][$i]['password'] = 'pass';
$cfg['Servers'][$i]['AllowNoPassword'] = true;

我迷失了主意!

我已將綁定地址= 0.0.0.0添加到my.ini文件

但是我在想這與我設置WAMP的方式有關,但是我似乎找不到改變的地方。

我也知道我絕對可以訪問數據庫,因為如果將它添加到Visual Studio中,我可以從數據庫中運行查詢...要注意的一件事..這是一台2003服務器...我知道在Visual上有某些限制工作室不確定與android嗎?

提前致謝

在你的PHP代碼

mysql_select_db($dbdb) 

應該

mysql_select_db($dbdb,$connect) ;

然后添加這些行

$result = mysql_query($query, $connect);
$num = mysql_num_rows($result);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM