使用PHP向android发送和接收变量

时间:2013-04-10 15:10:42

标签: php android mysql http-post

将变量发送到远程php文件并在单独的变量中接收MySQL行中的其余数据的最佳方法是什么(只发送一个变量)。我已经将变量发送保存为'name'这是我的PHP

<?php

// Make a MySQL Connection
mysql_connect("mysql8.000webhost.com", "a6811170_NTUDB", "?????") or die(mysql_error());

// Select the database
mysql_select_db("a6811170_NTUDB") or die(mysql_error());

//Get Name
$name=name; //Whatever is sent

// Get data from the table
$result = mysql_query("SELECT * FROM SocietyDatabase WHERE Name=$name") or die(mysql_error());  

while($row = mysql_fetch_array( $result )) {
print(json_encode($row['Name']));
print(json_encode($row['President']));
print(json_encode($row['Description']));
} 
?>

2 个答案:

答案 0 :(得分:1)

使用url(GET)或POST中的变量从应用程序调用php页面,并将结果解析为JSON。

编辑:从您的应用中调用您的php脚本:Make an HTTP request with android

并且更喜欢使用PDO,自php 5.5.0起,mysql_函数被标记为已弃用。使用PDO将是:

<?php

$db = new PDO('mysql:host=mysql8.000webhost.com;dbname=a6811170_NTUDB', 'a6811170_NTUDB', 'PASSWORD');
$query = $db->prepare("SELECT * FROM SocietyDatabase WHERE Name=?");
$query->execute(array($_GET['name']));
$result = $query->fetchAll();

print(json_encode($result));

?>

这样可以保护输入参数免受注入,并且您使用的是最新的功能。

答案 1 :(得分:0)

短数据的最佳方式是http“get” 你打电话

http://www.myserver.de/myscript.php?name=honkytonk

您可以在$ _REQUEST ['name']中找到“name”的内容。

如果您的数据变大,请使用发布请求。 对于图片或文件,请使用包含内容/多部分数据的帖子。

旁边:

始终逃避您的外部数据,否则您肯定会被黑客攻击!

像这样:

//从表中获取数据

$result = mysql_query("SELECT * FROM SocietyDatabase WHERE 
       Name='".mysql_real_escape_string($name)."'") or die(mysql_error());