java - 从java发布到php并将其插入mysql数据库

标签 java php mysql

我从 java 写了一篇简单的帖子到我的 php 后端。 运行脚本后,我得到了我传递的文件名、文件大小等输出。

int filesize=25;
String filetype=".txt";
String hash="sdfjksdfhljahe8wr897348957jsdfajlsdhfl48";
String email="sangwan.ritesh@yahoo.in";
String filename="songs.txt";
String urlParameters = "filename="+filename+"&filesize="+filesize+"&filetype="+filetype+"&filehash="+hash+"&email="+email;    
URL url = new URL("myurl");
HttpURLConnection hp=(HttpURLConnection)url.openConnection();
hp.setDoInput(true);
hp.setDoOutput(true);
hp.setInstanceFollowRedirects(false);
hp.setRequestMethod("POST");
hp.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); 
hp.setRequestProperty("charset", "utf-8");
hp.setRequestProperty("Content-Length", "" + Integer.toString(urlParameters.getBytes().length));
hp.setUseCaches (false);
DataOutputStream wr = new DataOutputStream(hp.getOutputStream ());
wr.writeBytes(urlParameters);
wr.flush();
String line;
BufferedReader reader = new BufferedReader(new InputStreamReader(hp.getInputStream()));
line = reader.readLine();
 System.out.println(line);
wr.close();
reader.close();
hp.disconnect();

问题是我想将这些值插入到我在服务器上运行的 mysql 数据库中,所以我编写了以下 php 代码。

<?php
include('dbc.php');
$filename=$_POST['filename'];
$filesize=$_POST['filesize'];
$filetype=$_POST['filetype'];
echo $POST['email'];
$filehash=$_POST['filehash'];
$email=$_POST['email'];
$query = "INSERT INTO files ( `email`, `file_name`, `file_ext`, `file_size`, 'file_hash') VALUES ( '$email', '$filename', '$filetype', '12584', 'filehash')";
$result=mysqli_query($dbc,$query);
if(mysqli_affected_rows($dbc) == 1)
{
  // DO Nothing
}
 echo $_POST['filehash'];
echo $_POST['email'];
echo $_POST['filename'];
echo $_POST['filesize'];
echo $_POST['filetype'];
?>

正在发布数据,我在我的 Java 应用程序中得到相同的数据,但数据没有输入到 mysql 数据库中。我有一个表名文件,其中包含与上述相同的列。我试图从 mysql_error 中获取错误,但我没有收到任何错误。

更新: 使用 ' 而不是 ` near file_hash 解决了愚蠢的 sql 语法错误问题

最佳答案

尝试在将变量输入数据库之前检查它们。你确定它们不是空的吗?

关于java - 从java发布到php并将其插入mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16098293/

相关文章:

c# - 如果覆盖它,是否要求子类调用 super.doSomething()?

java - 请解释这个 put-if-absent 成语中的竞争条件

java - 如何在 main 方法中调用 setter 方法?

javascript - mysql/node.js 如何使/假同步?

java - LinkedList getFirstElement 和 getLastElement 方法

php - 如何从laravel Controller 调用laravel文件夹外的php文件

php - Slim Framework 和 Ember.js 中的 Access-Control-Origin

php - 如何在MongoDB中选择一个字段大于另一个字段的文档?

mysql - MySQL 中的表为空集

mysql - 用于软件开发的 Mssql 与 mysql