導航:首頁 > 編程語言 > androidphp登陸

androidphp登陸

發布時間:2025-08-29 02:35:15

❶ 怎麼連接androidphp mysql資料庫

如何連接android和php mysql資料庫

我們先來看一個簡單的Android app例子(這里是一個商品存貨清單項目),在Android程序中,我們可以訪問(call)PHP腳本來執行簡單的CRUD操作(創建,讀取,更新,刪除)。為了使你對它的體系結構有一個大概的了解,這里先說一下它是怎麼工作的。首先你的Android項目訪問(call)PHP腳本來執行一條數據操作,我們稱它為「創建」。然後PHP腳本連接MySQL資料庫來執行這個操作。這樣,數據從Android程序流向PHP腳本,最終存儲在MySQL資料庫中。
好了,讓我們來深入的看一下。
請注意:這里提供的代碼只是為了使你能簡單的連接Android項目和PHP,MySQL。你不能把它作為一個標准或者安全編程實踐。在生產環境中,理想情況下你需要避免使用任何可能造成潛在注入漏洞的代碼(比如MYSQL注入)。MYSQL注入是一個很大的話題,不可能用單獨的一篇文章來說清楚,並且它也不在本文討論的范圍內,所以本文不以討論。
1. 什麼是WAMP Server
WAMP是Windows,Apache,MySQL和PHP,Perl,Python的簡稱。WAMP是一個一鍵安裝的軟體,它為開發PHP,MySQL Web應用程序提供一個環境。安裝這款軟體你相當於安裝了Apache,MySQL和PHP。或者,你也可以使用XAMP。

2. 安裝和使用WAMP Server
你可以從http://www.wampserver.com/en/下載WAMP,安裝完成之後,可以從開始->所有程序->WampServer->StartWampServer運行該程序。
在瀏覽器中輸入http://localhost/來測試你的伺服器是否安裝成功。同樣的,也可以打開http://localhost/phpmyadmin來檢驗phpmyadmin是否安裝成功。
3. 創建和運行PHP項目
現在,你已經有一個能開發PHP和MYSQL項目的環境了。打開安裝WAMP Server的文件夾(在我的電腦中,是C:\wamp\),打開www文件夾,為你的項目創建一個新的文件夾。你必須把項目中所有的文件放到這個文件夾中。
新建一個名為android_connect的文件夾,並新建一個php文件,命名為test.php,嘗試輸入一些簡單的php代碼(如下所示)。輸入下面的代碼後,打開http://localhost/android_connect/test.php,你會在瀏覽器中看到「Welcome,I am connecting Android to PHP,MySQL」(如果沒有正確輸入,請檢查WAMP配置是否正確)
test.php

4. 打開MainScreenActivity.java為main_screen.xml文件里的兩個按鈕添加點擊事件

MainScreenActivity.java

7. 添加一個新產品(寫入)
創建一個新的view和activity來向MySQL資料庫添加新產品。
新建一個簡單的表單,創建提供輸入產品名稱,價格和描述的EditText
add_proct.xml

8. 新建一個Activity來處理向MySQL資料庫插入新產品。
新建名為NewProctActivity.java的文件,輸入以下代碼。在下面的代碼中
首先,從EditText獲得用戶輸入的產品數據,格式化成基本參數格式
然後,向create_proct.php發送請求,通過HTTP POST創建一個新的產品
最後,從create_proct.php獲取json返回值,如果success值為1,新得到的列表中就加入了新增的產品。
NewProctActivity.java

11. JSONParser類
我用一個JSONParser類從URL獲得JSON格式的數據。這個類支持兩種http請求,GET和POST方法從URL獲取JSON數據
JSONParser.java

packagecom.example.androidhive; importjava.io.BufferedReader; importjava.io.IOException; importjava.io.InputStream; importjava.io.InputStreamReader; importjava.io.UnsupportedEncodingException; importjava.util.List; importorg.apache.http.HttpEntity; importorg.apache.http.HttpResponse; importorg.apache.http.NameValuePair; importorg.apache.http.client.ClientProtocolException; importorg.apache.http.client.entity.UrlEncodedFormEntity; importorg.apache.http.client.methods.HttpGet; importorg.apache.http.client.methods.HttpPost; importorg.apache.http.client.utils.URLEncodedUtils; importorg.apache.http.impl.client.DefaultHttpClient; importorg.json.JSONException; importorg.json.JSONObject; importandroid.util.Log; publicclassJSONParser { staticInputStream is = null; staticJSONObject jObj = null; staticString json = ""; // constructor publicJSONParser() { } // function get json from url // by making HTTP POST or GET mehtod publicJSONObject makeHttpRequest(String url, String method, List<NameValuePair> params) { // Making HTTP request try{ // check for request method if(method == "POST"){ // request method is POST // defaultHttpClient DefaultHttpClient httpClient = newDefaultHttpClient(); HttpPost httpPost = newHttpPost(url); httpPost.setEntity(newUrlEncodedFormEntity(params)); HttpResponse httpResponse = httpClient.execute(httpPost); HttpEntity httpEntity = httpResponse.getEntity(); is = httpEntity.getContent(); }elseif(method == "GET"){ // request method is GET DefaultHttpClient httpClient = newDefaultHttpClient(); String paramString = URLEncodedUtils.format(params, "utf-8"); url += "?"+ paramString; HttpGet httpGet = newHttpGet(url); HttpResponse httpResponse = httpClient.execute(httpGet); HttpEntity httpEntity = httpResponse.getEntity(); is = httpEntity.getContent(); } } catch(UnsupportedEncodingException e) { e.printStackTrace(); } catch(ClientProtocolException e) { e.printStackTrace(); } catch(IOException e) { e.printStackTrace(); } try{ BufferedReader reader = newBufferedReader(newInputStreamReader( is, "iso-8859-1"), 8); StringBuilder sb = newStringBuilder(); String line = null; while((line = reader.readLine()) != null) { sb.append(line + "\n"); } is.close(); json = sb.toString(); } catch(Exception e) { Log.e("Buffer Error", "Error converting result "+ e.toString()); } // try parse the string to a JSON object try{ jObj = newJSONObject(json); } catch(JSONException e) { Log.e("JSON Parser", "Error parsing data "+ e.toString()); } // return JSON String returnjObj; } }
到這里,本教程就結束了。

❷ 求助安卓大神:關於用eclipse實現收藏夾功能

一般都是安卓客戶端 +PHP伺服器, android客戶端和php+mysql+apache搭建的伺服器之間的簡單交互的例子:


先在mysql裡面建一個testlogin的資料庫,裡面有一個users表,記錄了id,用戶名和密碼。

在php的虛擬目錄下新建個php項目,創建conn.php和login.php文件。剛學點php寫的不好。
conn.php是連接mysql資料庫的。代碼如下:

<?php
$dbhost="localhost:3306";
$dbuser="root";//我的用戶名
$dbpass="";//我的密碼
$dbname="testlogin";//我的mysql庫名
$cn=mysql_connect($dbhost,$dbuser,$dbpass)ordie("connecterror");
@mysql_select_db($dbname)ordie("dberror");
mysql_query("setnames'UTF-8'");
?>login.php代碼:<?php
include("conn.php");//連接資料庫
$username=str_replace("","",$_POST['name']);//接收客戶端發來的username;
$sql="select*fromuserswherename='$username'";
$query=mysql_query($sql);
$rs=mysql_fetch_array($query);if(is_array($rs)){
if($_POST['pwd']==$rs['password']){
echo"loginsucceed";
}else{
echo"error";
}
}
?>

php代碼寫的很爛,伺服器算是架設完了。。

android客戶端:
布局隨意寫一下就這樣吧:

下面是主要的代碼:

{
@Override
publicvoidrun(){
//TODOAuto-generatedmethodstub
//getusernameandpassword;
userName=user_name.getText().toString().trim();
password=pass_word.getText().toString().trim();
//連接到伺服器的地址,我監聽的是8080埠
StringconnectURL="http://192.168.1.100:8080/text0/com.light.text/login.php/";
//填入用戶名密碼和連接地址
booleanisLoginSucceed=gotoLogin(userName,password,connectURL);
//判斷返回值是否為true,若是的話就跳到主頁。
if(isLoginSucceed){
Intentintent=newIntent();
intent.setClass(getApplicationContext(),HomeActivity.class);
startActivity(intent);
proDialog.dismiss();
}else{
proDialog.dismiss();
//Toast.makeText(ClientActivity.this,"登入錯誤",Toast.LENGTH_LONG).show();
System.out.println("登入錯誤");
}
}
}//登入的方法,傳入用戶密碼和連接地址
privatebooleangotoLogin(StringuserName,Stringpassword,StringconnectUrl){
Stringresult=null;//用來取得返回的String;
booleanisLoginSucceed=false;
//test
System.out.println("username:"+userName);
System.out.println("password:"+password);
//發送post請求
HttpPosthttpRequest=newHttpPost(connectUrl);
//Post運作傳送變數必須用NameValuePair[]陣列儲存
Listparams=newArrayList();
params.add(newBasicNameValuePair("name",userName));
params.add(newBasicNameValuePair("pwd",password));
try{
//發出HTTP請求
httpRequest.setEntity(newUrlEncodedFormEntity(params,HTTP.UTF_8));
//取得HTTPresponse
HttpResponsehttpResponse=newDefaultHttpClient().execute(httpRequest);
//若狀態碼為200則請求成功,取到返回數據
if(httpResponse.getStatusLine().getStatusCode()==200){
//取出字元串
result=EntityUtils.toString(httpResponse.getEntity());
ystem.out.println("result="+result);
}
}catch(Exceptione){
e.printStackTrace();
}
//判斷返回的數據是否為php中成功登入是輸出的
if(result.equals("loginsucceed")){
isLoginSucceed=true;
}
returnisLoginSucceed;
}

android客戶端和php+mysql+apache搭建的伺服器之間的簡單交互,實現登入功能。
實現原理就是android客戶端發送請求,傳給伺服器登入的用戶名密碼,伺服器收到這些,連接到資料庫查詢,如果用戶名和密碼匹配正確,就輸出字元串返回給客戶端。

伺服器端:
先在mysql裡面建一個testlogin的資料庫,裡面有一個users表,記錄了id,用戶名和密碼。

在php的虛擬目錄下新建個php項目,創建conn.php和login.php文件。剛學點php寫的不好。
conn.php是連接mysql資料庫的。代碼如下:


<?php

$dbhost = "localhost:3306";

$dbuser = "root"; //我的用戶名

$dbpass = ""; //我的密碼

$dbname = "testlogin"; //我的mysql庫名

$cn = mysql_connect($dbhost,$dbuser,$dbpass) or die("connect error");

@mysql_select_db($dbname)or die("db error");

mysql_query("set names 'UTF-8'");

?>login.php代碼:<?php

include ("conn.php");//連接資料庫

$username=str_replace(" ","",$_POST['name']);//接收客戶端發來的username;

$sql="select * from users where name='$username'";

$query=mysql_query($sql);

$rs = mysql_fetch_array($query);if(is_array($rs)){

if($_POST['pwd']==$rs['password']){

echo "login succeed";

}else{

echo "error";

}

}

?>

復制代碼



php代碼寫的很爛,伺服器算是架設完了。。

android客戶端:
布局隨意寫一下就這樣吧:

下面是主要的代碼:

class LoginHandler implements Runnable {

@Override

public void run() {

// TODO Auto-generated method stub

//get username and password;

userName = user_name.getText().toString().trim();

password = pass_word.getText().toString().trim();

//連接到伺服器的地址,我監聽的是8080埠

String connectURL="http://192.168.1.100:8080/text0/com.light.text/login.php/";

//填入用戶名密碼和連接地址

boolean isLoginSucceed = gotoLogin(userName, password,connectURL);

//判斷返回值是否為true,若是的話就跳到主頁。

if(isLoginSucceed){

Intent intent = new Intent();

intent.setClass(getApplicationContext(), HomeActivity.class);

startActivity(intent);

proDialog.dismiss();

}else{

proDialog.dismiss();

// Toast.makeText(ClientActivity.this, "登入錯誤", Toast.LENGTH_LONG).show();

System.out.println("登入錯誤");

}

}

}//登入的方法,傳入用戶 密碼 和連接地址

private boolean gotoLogin(String userName, String password,String connectUrl) {

String result = null; //用來取得返回的String;

boolean isLoginSucceed = false;

//test

System.out.println("username:"+userName);

System.out.println("password:"+password);

//發送post請求

HttpPost httpRequest = new HttpPost(connectUrl);

//Post運作傳送變數必須用NameValuePair[]陣列儲存

List params = new ArrayList();

params.add(new BasicNameValuePair("name",userName));

params.add(new BasicNameValuePair("pwd",password));

try{

//發出HTTP請求

httpRequest.setEntity(new UrlEncodedFormEntity(params,HTTP.UTF_8));

//取得HTTP response

HttpResponse httpResponse=new DefaultHttpClient().execute(httpRequest);

//若狀態碼為200則請求成功,取到返回數據

if(httpResponse.getStatusLine().getStatusCode()==200){

//取出字元串

result=EntityUtils.toString(httpResponse.getEntity());

ystem.out.println("result= "+result);

}

}catch(Exception e){

e.printStackTrace();

}

//判斷返回的數據是否為php中成功登入是輸出的

if(result.equals("login succeed")){

isLoginSucceed = true;

}

return isLoginSucceed;

}


登入成功後會跳到主頁:

代碼就這樣多,實現的最簡單的登入方法,其實還有很多要實現的,需要為用戶保存用戶名和密碼及登入成功後或者不成功後的反饋等。

❸ php for android已經安裝到虛擬機,打開虛擬機種的php for android 提示 install , 點擊install後提示faile

在Android環境中,.jar文件類似於.so文件,是一種可被其他應用程序調用的庫文件。通常,.jar文件的安裝過程相對簡單,只需將其復制到特定目錄下即可。具體而言,在Android系統中,如果需要安裝一個.jar文件,可以將其直接復制到/system/framework/目錄中。

然而,在嘗試使用php for android時,遇到了一些問題。在虛擬機中安裝了php for android後,打開虛擬機中的php for android時會提示需要安裝。點擊「install」後,系統會顯示安裝失敗的消息。

為了解決這個問題,首先需要確認php for android的安裝包是否正確。檢查安裝包是否與當前Android版本兼容,並確認是否為官方渠道提供的版本。接著,檢查是否有足夠的存儲空間用於安裝,以及系統許可權是否足夠。如果上述步驟都已完成,但仍無法安裝,建議嘗試重新下載安裝包,或更新虛擬機的Android系統版本。

值得注意的是,在處理此類問題時,可以參考相關文檔或社區論壇,以獲得進一步的幫助。同時,確保在安裝過程中遵循官方指導,避免因操作不當導致安裝失敗。

❹ php編輯器手機版 php編輯器app

PHP編輯器手機版與PHP編輯器APP的推薦

一、PHP編輯器APP推薦

  1. Notepad++(支持Windows系統,可通過第三方應用實現手機版使用)

    • 特點:Notepad++是Windows下的一套文本編輯器,擁有完整的中文化介面,支持多國語言編寫(UTF8技術)。雖然主要是桌面版應用,但可以通過一些第三方應用或遠程桌面等方式在手機版上使用。
  2. Sublime Text

    • 特點:Sublime Text是一款高級的HTML和散文文本編輯器,也支持PHP編寫。它輕量級且擁有豐富的特性,支持在Windows、OSX和Linux上運行。雖然主要是桌面版,但同樣可以通過第三方應用或雲服務實現手機版編輯。
  3. PHPStorm

    • 特點:PHPStorm是一款商業PHP集成開發工具,功能非常強大,包括代碼高亮、代碼提示、自動補全、錯誤提醒等。雖然主要是桌面版應用,但JetBrains公司提供了雲服務(如JetBrains Space),允許用戶在手機版上訪問和編輯項目。

二、PHP編輯器手機版專屬推薦

  1. AIDE - IDE for Android Java C++

    • 特點:雖然主要面向Android、Java和C++開發,但AIDE也支持PHP代碼的編輯和運行。它是一款功能強大的IDE,適合在手機上進行簡單的PHP代碼編輯和調試。
  2. Dcoder

    • 特點:Dcoder是一款適用於iOS和Android的編程IDE,支持多種編程語言,包括PHP。它提供了代碼高亮、自動補全等功能,方便用戶在手機上進行代碼編輯。
  3. Termux

    • 特點:Termux是一個在Android上運行的Linux環境和命令行界面,用戶可以通過安裝Linux軟體包來運行PHP等編程語言。雖然它不是專門的PHP編輯器,但提供了一個強大的終端環境,允許用戶進行各種編程任務。

三、總結

在選擇PHP編輯器手機版或APP時,用戶應根據自己的需求和設備類型進行選擇。對於需要強大功能和高效開發的用戶,建議優先考慮PHPStorm的雲服務或類似解決方案;對於需要在手機上進行簡單編輯的用戶,AIDE、Dcoder或Termux等應用可能是更好的選擇。同時,由於手機屏幕大小和操作方式的限制,手機版編輯器的功能和效率可能無法與桌面版相比,因此在進行復雜或大規模項目開發時,建議使用桌面版編輯器。

閱讀全文

與androidphp登陸相關的資料

熱點內容
cad命令大全圖表下載 瀏覽:389
程序員去印度工作 瀏覽:422
蘋果app活動怎麼導出 瀏覽:3
pdf轉高清圖片 瀏覽:33
人人玩棋牌源碼 瀏覽:345
如何獲取美團伺服器時間 瀏覽:342
php簡單加密演算法 瀏覽:791
什麼是開伺服器 瀏覽:607
cd4017單片機怎麼用 瀏覽:263
鳥哥pdf 瀏覽:242
忘記加密的密碼了怎麼辦 瀏覽:558
好友信息提示音在哪個文件夾 瀏覽:276
怎麼讓雲伺服器轉發本地埠 瀏覽:46
python數組剔除元素 瀏覽:15
推薦一款解壓的手機游戲 瀏覽:47
jsphp時間戳轉換日期 瀏覽:421
明日之後如何刪掉賬號伺服器 瀏覽:76
syjsks是什麼伺服器 瀏覽:606
中控軟體加密狗授權後變空白的 瀏覽:675
androidphp登陸 瀏覽:194