嗨,我正在尝试将数据从 Android 设备发送到 mysql 数据库。我的手机和笔记本电脑通过 wifi 连接到互联网。我的手机通过 USB 线连接到笔记本电脑。我没有使用模拟器。在我的java代码中,我尝试使用10.0.0.2和127.0.0.1,但都不起作用。我已经阅读了 stackoverflow 上的一些内容,据我了解,这些仅适用于模拟器。当我在应用程序中输入一些数据并单击发送按钮时,它表示数据已成功输入,并且 logcat 中没有错误,但是当我检查数据库时没有任何条目。我认为我使用了错误的地址或者我的 linker.php 文件位于错误的位置。然后我尝试使用我的 IP 地址。在我的主要 Activity 的 java 代码中。
HttpPost httpPost = new HttpPost("http://'IP ADDRESS'/linker.php");
我已经更改了 Apache http.config,所以现在它有了行
Listen 'IP ADDRESS'
我在 list 中拥有互联网权限。
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
这是我的 linker.php,位于我的 htDocs 文件夹内
<?php
$con=mysql_connect('localhost', 'root', '');
mysql_select_db("mydatabase", $con); //The name of the database
$name=$_POST['name'];
$age=$_POST['age'];
mysql_query("insert into mytable(name, age) values('($name)', '($age)')");
?>
这是我在浏览器中打开 linker.php 文件时看到的内容。我应该之前检查过这一点。我该如何解决这个问题。
Notice: Undefined index: name in C:\xampp\htdocs\linker.php on line 6
Notice: Undefined index: age in C:\xampp\htdocs\linker.php on line 7
任何帮助将不胜感激。
最佳答案
好吧,看起来 $_POST 不包含“姓名”和“年龄”,我会执行 print_r($_POST) 作为第一个可执行语句,只是为了看看 $_POST 包含什么...
其次,查询有点偏离...尝试
mysql_query("insert into mytable(name, age) values('$name', '$age')");
关于java - 从android发送数据到mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29082593/