php - ACRA 将报告插入我的服务器数据库

标签 php android mysql acra

我成功配置 ACRA 将捕获的异常发送到我的服务器,问题是我无法将报告插入数据库:

@AcraCore(buildConfigClass = BuildConfig.class)
@AcraHttpSender(uri = "http://www.myserver.com/crashreports/addreport.php",
        httpMethod = HttpSender.Method.POST)

public class MyApplication extends Application {
    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);

        ACRA.init(this);
    }
}

我知道它会发送一些内容,因为我在 phpMyAdmin 中看到一个空条目,但我无法在数据库中获取报告:

<?php
$link = mysqli_connect("localhost", "root", "pass", "db");

// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

// Escape user inputs for security
$report = mysqli_real_escape_string($link, $_REQUEST['']);

// attempt insert query execution
$sql = "INSERT INTO VoiceRemoteCrash (report) VALUES ('$report')";

if(mysqli_query($link, $sql)){
    echo "Records added successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}

// close connection
mysqli_close($link);
?>

我搜索了文档,但没有找到太多信息,而且我的 PHP 知识有些基础。

最佳答案

$_REQUEST[''] 将返回 NULL 并抛出“未定义索引”通知。

您可以使用 file_get_contents('php://input') 从 POST 原始数据获取报告。

我建议您看看:How can I prevent SQL injection in PHP?并使用参数化查询。

关于php - ACRA 将报告插入我的服务器数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48893830/

相关文章:

PHPMailer 和 Gmail 对话 View

javascript - 是否可以使用 PHP 比较两个帖子,当标题匹配时,获取帖子的 ID?

Android:findViewById 上的扩展按钮 NullPointerException?

mysql - 具有自动提交事务的 Django save() 行为

mysql - 您如何看待 mysql 表上的级联删除?

java - 我面临这个问题 E/catch === : org. json.JSONException:SorrySignUpFirst 没有值

php - (php) 如何在目前已完成的表格中正确处理 'save' 信息

android - 如何在android中实现类似gmail应用的搜索栏?

android - 通过电子邮件创建用户时的 Firebase 异常处理

mysql - 有没有办法将 sha256 转换为 md5 哈希