java - 基本网络.performRequest : Unexpected response code 500 Android

标签 java php android mysql

我正在尝试更新数据库中的参数,但在 Android 中我收到此错误:

09-15 13:26:43.505 31109-31784/app.bsmo.ismael034.com.bsmo E/Volley: [27268] BasicNetwork.performRequest: Unexpected response code 500 for http://bsmo.000webhostapp.com/Asistencia/actualizar_meta.php?id=2

我认为这是一个 PHP 问题,但我找不到任何错误。服务器处于 Activity 状态并全面运行。

这是我的代码:

<?php
 require 'Database.php';

class Meta
{
    function __construct()
    {
    }

    public static function getAll()
    {
        $consulta = "SELECT * FROM asistencia";
        try {
            // Preparar sentencia
            $comando = Database::getInstance()->getDb()->prepare($consulta);
            // Ejecutar sentencia preparada
            $comando->execute();

            return $comando->fetchAll(PDO::FETCH_ASSOC);

        } catch (PDOException $e) {
            return false;
        }
    }

    public static function getById($id)
    {
        // Consulta de la meta
        $consulta = "SELECT id,
                             id_musico,
                             asistenciaD
                             FROM asistencia
                             WHERE id = ?";

        try {
            // Preparar sentencia
            $comando = Database::getInstance()->getDb()->prepare($consulta);
            // Ejecutar sentencia preparada
            $comando->execute(array($id));
            // Capturar primera fila del resultado
            $row = $comando->fetch(PDO::FETCH_ASSOC);
            return $row;

        } catch (PDOException $e) {
            // Aquí puedes clasificar el error dependiendo de la excepción
            // para presentarlo en la respuesta Json
            return -1;
        }
    }

    public static function update(
        $id,
        $id_musico,
        $asistenciaD 
    )
    {
        // Creando consulta UPDATE
        $consulta = "UPDATE asistencia" .
            " SET id_musico=?, asistenciaD=? " .
            "WHERE id=?";

        // Preparar la sentencia
        $cmd = Database::getInstance()->getDb()->prepare($consulta);

        // Relacionar y ejecutar la sentencia
        $cmd->execute(array($id_musico, $asistenciaD, $id));

        return $cmd;
    }

    public static function insert(
        $dia,
        $asistenciaD 
    )
    {
        // Sentencia INSERT
        $comando = "INSERT INTO asistencia ( " .
            "dia," .
            " asistenciaD)" .
            " VALUES( ?,?)";

        // Preparar la sentencia
        $sentencia = Database::getInstance()->getDb()->prepare($comando);

        return $sentencia->execute(
            array(
                $dia,
                $asistenciaD 
            )
        );

    } 
}
?>

actualizar_meta.php:

<?php

require 'Meta.php';

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    // Decodificando formato Json
    $body = json_decode(file_get_contents("php://input"), true);

    // Actualizar meta
    $retorno = Meta::update(
        $body['id'],
        $body['asistenciaD']);

    if ($retorno) {
        // Código de éxito
        print json_encode(
            array(
                'estado' => '1',
                'mensaje' => 'Actualización éxitosa')
        );
    } else {
        // Código de falla
        print json_encode(
            array(
                'estado' => '2',
                'mensaje' => 'Actualización fallida')
        );
    }
}

如何解决这个问题? 非常感谢

最佳答案

您的代码在 FROM 之前和 asistenciaD 之后有多余的 ,

改变

$consulta = "SELECT id,
                     id_musico,
                     asistenciaD,
                     FROM asistencia
                     WHERE id = ?";

$consulta = "SELECT id,
                     id_musico,
                     asistenciaD
                     FROM asistencia
                     WHERE id = ?";

关于java - 基本网络.performRequest : Unexpected response code 500 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52705293/

相关文章:

Java用最大值初始化大数组

java - 如何使用 Maven 在 Eclipse 中调试独立的 Java 程序?

PHP-FPM 和 Nginx : "Resource temporarily unavailable" errors in proxy_error_log

javascript - 从 Javascript/Geocoder.geocode() 获取纬度和经度并将其与 php 一起使用

android - 使用aidl在模拟器上阻止来电,但在手机上却给出致命异常

android - 如何将通知从一个安卓设备发送到另一个?

java - Eclipse JDT 编译器说方法未定义,但 Eclipse IDE 没有

php - 亚马逊 S3 : Monitor my bucket's current disk and bandwidth usage using PHP?

java - 全局对象(基于 "extend Application")一夜之间蒸发了..为什么?

Java 相当于 python 的 raise Exception ("Something went wrong")