gpt4 book ai didi

java - 通过 PHP 插入 SQL 数据库

转载 作者:行者123 更新时间:2023-11-30 03:27:58 27 4
gpt4 key购买 nike

我的 Java 代码生成如下链接:

addscore.php&name=Namedd&score=0&hash=b61249d0207e4734879578733a86c3d6

PHP 文件(addscore.php)应该处理这些信息,并通过 SQL 查询将其插入数据库。

addscore.php:

<?php
$db = mysql_connect("host", "root", "password") or die('Could not connect: ' . mysql_error());
mysql_select_db("db1") or die('Could not select database');

$score = (int)$_GET['score'];
$hash = $_GET['hash'];
$name = mysql_real_escape_string($_GET['name'], $db);
$timestamp = date("Y-m-d H:i:s");
$secretKey="mySecretKey";

$real_hash = md5($score . $hash . $secretKey);

if($real_hash == $hash) {
$query = "INSERT INTO highscores (id, date, score, name) VALUES (NULL, '$timestamp', '$score', '$name')";
$result = mysql_query($query) or die('Query failed: ' . mysql_error());
}
?>

Java 代码给出错误消息,无法将分数提交到服务器。如果我尝试打开给定的网址(见上文),我会收到 Not found 错误。

更新:Java代码:

        String hash = "";
String name = nameText.getText();
try{
MessageDigest md = MessageDigest.getInstance("MD5");
md.update((name + score + HASH_SALT).getBytes());
byte byteData[] = md.digest();

StringBuffer sb = new StringBuffer();
for (int i = 0; i < byteData.length; i++) {
sb.append(Integer.toString((byteData[i] & 0xff) + 0x100, 16).substring(1));
}
hash = sb.toString();
} catch (Exception e) {
hash = "";
}


try {
String urlParameters = PARAM_NAME + name + PARAM_SCORE + score + PARAM_HASH + hash;
URL url = new URL(HIGHSCORES_ADD + urlParameters);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.getInputStream();
urlConnection.disconnect();
} catch (Exception e){
Gdx.app.log( "HighScores", "Could not submit score" + e.getMessage());
} finally {
((Game)Gdx.app.getApplicationListener()).setScreen(new MainMenu());
}

最佳答案

您的地址应该是

addscore.php?name=Namedd&score=0&hash=b61249d0207e4734879578733a86c3d6

注意 URL 中的第一个 &

在您的 Java 代码中,请确保在 HIGHSCORES_ADDurlParameters 之间有 ?

当您修复保存数据时是否仍然有错误一个好主意是将 $query 保存在文本或日志文件中,并尝试在 phpmyadmin 中检查查询

您必须注意的另一件事是您的插入是通过 php 而不是 java !更新您的问题主题

关于java - 通过 PHP 插入 SQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29708437/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com