sql – ¿Por qué no me deja ingresar los datos en los “OUTS”?

quiero saber si mi función esta bien, ya que no me deja ingresar a los “outs” , ya que me bota error “,” cerca de (into rental_id, ) . Gracias como siempre por sus respuestas.

create or replace function mostrar_dato(id in integer,
out rental_id integer,
out rental_date timestamp,
out cliente varchar,
out empleado varchar)
language sql
as
$$
    select rental_id,rental_date,c.first_name,s.first_name into rental_id ,rental_date,cliente,empleado from rental r inner join customer c on r.customer_id = c.customer_id inner join staff s on r.staff_id = s.staff_id where rental_id = id;
$$;

select mostrar_dato(27);

html – quiero poner el footer (color oscuro) detras de la card blanca pero esta no deja, ¿qué podria hacer?

.container-card{
    margin-bottom: 50px;
    width: 100%;
    height: 100px;
    position: relative;
}
.card-smile{
    text-align: center;
    margin: 50px 10px;
    position: absolute;
    top: -10px;
    padding: 15px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.card-smile > h3{
    font-size: 1.09em;
}



.btn-big{
    border: none;
    border-radius: 2em;
    background-color: rgba(254,85,194,255);
    color: #FFF;
    font-size: .6em;
    margin-bottom: 1.5em;
    padding: 1.2em 4em;
}


/* footer */

footer{
    background: #00252e;
    width: 100%;
    heigth:300px;
    z-index: -10;
}
<div class="conteiner2-card">
  <div class="container-card">
    <div class="card-smile">
      <h3>Ready To Build Your Community?</h3>
      <button class="btn btn-big btn-dffcolor">
        Get Started For Free
      </button>  
  </div>
</div>
</div>
<footer>
    <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Assumenda fugit a necessitatibus perspiciatis ullam ex praesentium, quas id eum. Optio nostrum labore cum esse quasi quae odio non molestias magni? </p>
</footer>

php – Estoy realizando un código pero no me deja actualizar

El programa no me muestra ninguna clase de error pero no me actualiza pero si me envía y almacena la imagen a la carpeta que tengo definida pero no me actualiza ningún dato en la base todo esto se presento al cambiar la conexión de mysqli a PDO y dejar de guardar las imágenes como longblob , no se si es por la imagen o por el select que trae el nombre de la categoría desde otra tabla, agradezco la ayuda
Aquí el código del formulario de actualización

<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>form_actualizar</title>
    <link rel="stylesheet" href="http://es.stackoverflow.com/../../views/dist/css/add.css">
    <link rel="stylesheet" href="http://es.stackoverflow.com/../../views/dist/css/normalize.css">
</head>
<body>
    <?php
        include ("../../../controller/database.php");  
        $query = $pdo->prepare("SELECT * FROM categoria_producto"); 
        $query->execute();
        $ID_PRODUCTO = $_GET("ID_PRODUCTO");
        $productos  = $pdo->prepare("SELECT * FROM producto WHERE ID_PRODUCTO='$ID_PRODUCTO'");
        $productos->execute();
 ?> 
 <div class="container">
        <?php
              $resultado = $productos->fetchAll(PDO::FETCH_ASSOC);
             foreach ($resultado as $row)?>
        <form action="../../../models/admin/productos/verificar_actualizar.php" method="post"  class="contact" id="contact"  enctype="multipart/form-data" autocomplete="off">
            <input type="hidden" name="ID_PRODUCTO" value="<?php echo $row("ID_PRODUCTO");?>">
            <br>
            <label for="NOMBRE_PRODUCTO">Nombre producto</label>
            <br>
            <input type="text" maxlength="70" required="" class="NOMBRE_CATEGORIA_PRODUCTO" name="NOMBRE_PRODUCTO"  id="NOMBRE_PRODUCTO" value="<?php echo $row("NOMBRE_PRODUCTO");?>">
            <br>
            <label for="DESCRIPCION_PRODUCTO">Descripción del producto</label>
            <br>
            <input type="text" name="DESCRIPCION_PRODUCTO" id="DESCRIPCION_PRODUCTO" class="DESCRIPCION_PRODUCTO" value="<?php echo $row("DESCRIPCION_PRODUCTO");?>" cols="30" rows="10"></input>
            <br>
            <label for="CANTIDAD_PRODUCTO">Cantidad producto</label>
            <br>
            <input type="number" min="1" id="CANTIDAD_PRODUCTO" name="CANTIDAD_PRODUCTO" class="CANTIDAD_PRODUCTO" value="<?php echo $row("CANTIDAD_PRODUCTO");?>">
            <br>
            <label for="VALOR_PRODUCTO">Valor producto</label>
            <br>
            <input type="number" min="1" name="VALOR_PRODUCTO" id="VALOR_PRODUCTO" class="VALOR_PRODUCTO" value="<?php echo $row("VALOR_PRODUCTO");?>">
            <br>
            <label for="ID_CATEGORIA_PRODUCTO">Categoria</label>
            <br>
            <select name="ID_CATEGORIA_PRODUCTO" class="ID_CATEGORIA_PRODUCTO" required="">
                <option value="">seleccionar</option>       
                <?php 
                    $result = $query->fetchAll(PDO::FETCH_ASSOC);
                    foreach ($result as $resultado) {
                 ?>
                 <option value="<?php echo $resultado('ID_CATEGORIA_PRODUCTO')?>"><?php echo $resultado('NOMBRE_CATEGORIA_PRODUCTO')?></option>
                <?php 
            }
                ?>
            </select>
            <label for="IMAGEN_PRODUCTO ">Imagen producto</label>
            <br>
            <input type="file" name="IMAGEN_PRODUCTO" id="IMAGEN_PRODUCTO   "
            class="IMAGEN_PRODUCTO" accept="image/png, .jpeg, .jpg, image/gif">
            <br>
            <input type="submit" value="Enviar" id="submit">
        </form>
    </div>
</body>
</html>

Verificar actualizar

<?php
include ("../../../controller/database.php");
if (isset($_POST('ID_CATEGORIA_PRODUCTO'))) {
        $ID_CATEGORIA_PRODUCTO=$_POST('ID_CATEGORIA_PRODUCTO');
    }
    
    $ID_PRODUCTO= $_POST("ID_PRODUCTO");
    $NOMBRE_PRODUCTO = $_POST('NOMBRE_PRODUCTO');
    $DESCRIPCION_PRODUCTO = $_POST('DESCRIPCION_PRODUCTO');
    $CANTIDAD_PRODUCTO = $_POST('CANTIDAD_PRODUCTO');
    $VALOR_PRODUCTO = $_POST('VALOR_PRODUCTO');
    if ($_FILES("IMAGEN_PRODUCTO")) {
        $nombre_base = basename($_FILES("IMAGEN_PRODUCTO")("name"));
        $nombre_final = date("m-d-y"). "-" . date("h-i-s"). "-" . $nombre_base;
        $ruta = "../../../../public/products_photo/" . $nombre_final;
        $subirimagen = move_uploaded_file($_FILES("IMAGEN_PRODUCTO")("tmp_name"), $ruta);
    }
    
            $queryProducto = $pdo->prepare("UPDATE producto SET ID_CATEGORIA_PRODUCTO = :ID_CATEGORIA_PRODUCTO, NOMBRE_PRODUCTO = :NOMBRE_PRODUCTO, DESCRIPCION_PRODUCTO = :DESCRIPCION_PRODUCTO, CANTIDAD_PRODUCTO = :CANTIDAD_PRODUCTO, VALOR_PRODUCTO = :VALOR_PRODUCTO WHERE ID_PRODUCTO = :ID_PRODUCTO");
            $queryProducto->bindParam(":ID_CATEGORIA_PRODUCTO",$ID_CATEGORIA_PRODUCTO);
            $queryProducto->bindParam(":NOMBRE_PRODUCTO",$NOMBRE_PRODUCTO);
            $queryProducto->bindParam(":DESCRIPCION_PRODUCTO",$DESCRIPCION_PRODUCTO);
            $queryProducto->bindParam(":CANTIDAD_PRODUCTO",$CANTIDAD_PRODUCTO);
            $queryProducto->bindParam(":VALOR_PRODUCTO",$VALOR_PRODUCTO);
            $queryProducto->bindParam(":ID_PRODUCTO",$ID_PRODUCTO);
            $queryProducto->execute();
      
              if ($queryProducto) {
                echo "guarda";
            }
            else{
                echo "no guardo";
            }
            if (empty($_POST('IMAGEN_PRODUCTO'))) {
                echo "llego";
                $queryimagen = $pdo->prepare("UPDATE producto SET IMAGEN_PRODUCTO = :ruta WHERE ID_PRODUCTO = :ID_PRODUCTO");
                $queryimagen->bindParam(':ruta',$ruta);
                $queryimagen->bindParam(":ID_PRODUCTO",$ID_PRODUCTO);
                $queryimagen->execute();
                echo "valor no nullo";
            }
            else{
                echo "valor nulo";
            }
    
$pdo=null;
?> 

PDO conexión

<?php
// Configuracion de la BD

    $servidor = "mysql:dbname=reservaya2;host=localhost";
    $user = "root";
    $pass = "";
    try {
        $pdo = new PDO($servidor, $user, $pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
    } catch (PDOException $e) {
        echo "Conexion fallida " . $e->getMessage();
    }


?>

Tablas que se usan
introducir la descripción de la imagen aquí

introducir la descripción de la imagen aquí

javascript – REACT ERROR: en el archivo chokidar.js, no me deja compilar mi proyecto

Realicé un proyecto con npx create-react-app , estaba trabajando en el y de repente salió el siguiente error:

    Failed to compile
./node_modules/watchpack/lib/chokidar.js
SyntaxError: C:UsersUsuarioDesktopReact projectsTheFilmAppthefilmappnode_moduleswatchpacklibchokidar.js: 'return' outside of function (4:1)

  2 | try {
  3 |   module.exports = require("chokidar");
> 4 |   return;
    |   ^
  5 | } catch(e) {
  6 |   v3Err = e;
  7 | }
This error occurred during the build time and cannot be dismissed.

Si alguno me ayuda a solucionarlo , se lo agradeceré ya que no me deja continuar con mi proyecto

web – Radio button me deja seleccionar más de una opción Angular 10

Estoy haciendo un formulario en Angular 10 y tengo una parte donde utilizo radio buttons junto a *ngFor. Se trata de un cuestionario que permite al usuario contestar a varias preguntas, pero el problema es que se supone que solamente se tendría que poder elegir una opción, pero me deja seleccionar más de una. Este es mi código

<h2 id="pregunta" *ngFor="let questions of question; let i=index"><div *ngIf="i<1">
          {{i}}
          {{questions.question}}
        
        <form (formGroup)="form" *ngFor="let answers1 of answer1; let j=index"  method="post"> 
          
          <input id="answers1{{j}}" type="radio" name="preg1" value={{answers1.id}}/><label
          for="answer2">{{answers1.answer}}</label>

</form>

<button id="boton" class="button" type="submit"(click)="onSubmit()">Siguiente</button>

Gracias de antemano por la respuesta

asp.net mvc – Despues de cerrar ventana modal, me deja en blanco toda la pagina

Soy novato en MVC 5 trabajamos con c# / VS 2019 / Entity / Sql Server / algo de Ajax / Json.

Bien tengo el siguiente problema:

http://local…/alumnos?grupo=003&materia=106 (todo bien)
introducir la descripción de la imagen aquí

Se editan y obviamente actualizan los datos en la BD, pero no puedo regresar a la pantalla después de dar clic en Actualizar Calificaciones me regresa una bandera con valor de 1 y todo en blanco.

http://local…/alumnos/Guardar (Aquí sitio en blanco) y solo muestra un 1 que es el resultado enviado por la acción Guardar del controlador Alumnos a la vista, y que no recibe la función Guardar de los scripts en la vista.

Aquí la acción RecuperarCalificaciones y Guardar en el controlador Alumnos:

public string Guardar(MisCalificacionesCLS oMisCalificacionesCLS, int titulo)
    {
        string rpta = "";
        try
        {
        if (!ModelState.IsValid)
        {
            var query = (from state in ModelState.Values
                         from error in state.Errors
                         select error.ErrorMessage).ToList();
            rpta += "<ul class='list-group'>";
            foreach(var item in query)
            {
                rpta += "<li class='list-group'>" + item + "</li>";
            }
            rpta += "</ul>";
        }
        else 
        { 
            using (var bd = new kardexEntities())
            {
                if (titulo.Equals(-1))
                {
                    Parciales oParciales = new Parciales();
                    oParciales.parcial1 = oParciales.parcial1;
                    oParciales.parcial2 = oParciales.parcial2;
                    oParciales.parcial3 = oParciales.parcial3;
                    bd.Parciales.Add(oParciales);
                    rpta = bd.SaveChanges().ToString();
                    if (rpta == "0")
                        rpta = "";
                }
                else
                {
                    Parciales oParciales = bd.Parciales.Where(p => p.idcalificacion == titulo).First();
                    oParciales.parcial1 = oMisCalificacionesCLS.parcial1;
                    oParciales.dfecha_parcial1 = DateTime.Now;
                    oParciales.parcial2 = oMisCalificacionesCLS.parcial2;
                    oParciales.dfecha_parcial2 = DateTime.Now;
                    oParciales.parcial3 = oMisCalificacionesCLS.parcial3;
                    oParciales.dfecha_parcial3 = DateTime.Now;
                    rpta = bd.SaveChanges().ToString();
                }
            }
        }
        }
        catch(Exception ex)
        {
            rpta = "";
        }

        return rpta;
    }

    public JsonResult RecuperaCalificaciones(int _idcalificacion)
    {
        MisCalificacionesCLS oMisCalificacionesCLS = new MisCalificacionesCLS();
        using (var bd = new kardexEntities())
        {
            Parciales oCalifica = bd.Parciales.Where(p => p.idcalificacion == _idcalificacion).First();
            oMisCalificacionesCLS.cve_unica = oCalifica.cve_unica;
            oMisCalificacionesCLS.nombre_alumno = oCalifica.ape_pat + " " + oCalifica.ape_mat + ", " + oCalifica.nombres;
            oMisCalificacionesCLS.parcial1 = oCalifica.parcial1;
            oMisCalificacionesCLS.parcial2 = oCalifica.parcial2;
            oMisCalificacionesCLS.parcial3 = oCalifica.parcial3;
        }
        return Json(oMisCalificacionesCLS, JsonRequestBehavior.AllowGet);
    }

En la vista Index.cshtml se observa el uso de vista parcial _Parciales.cshtml que contiene los controles de textbox para ingresar calificaciones (ventana modal arriba en la imagen se aprecia) así como tambien dentro de la vista parcial en el boton se llama a la función Edita(idcalificacion) que esta en los scripts de index.cshtml:

La vista parcial

@using Calificaciones.Models
@model List<MisCalificacionesCLS>
<div class="row">
    <div class="col-lg-12">
        <div class="card card-outline-info">
            <div class="card-body">
                <div class="form-body">
                    <div class="row">
                        <div class="col-md-12 ">
                            <table class="table table-bordered table-hover">
                                <thead>
                                    <tr>

                                        <td width="3%"> @Html.LabelFor(p => Model(0).idcalificacion)</td>
                                        <td width="10%"> @Html.LabelFor(p => Model(0).cve_unica)</td>
                                        <td width="20%"> @Html.LabelFor(p => Model(0).ape_pat)</td>
                                        <td width="20%"> @Html.LabelFor(p => Model(0).ape_mat)</td>
                                        <td width="20%"> @Html.LabelFor(p => Model(0).nombres)</td>
                                        <td width="4%"> @Html.LabelFor(p => Model(0).parcial1)</td>
                                        <td width="4%"> @Html.LabelFor(p => Model(0).parcial2)</td>
                                        <td width="4%"> @Html.LabelFor(p => Model(0).parcial3)</td>
                                        <td width="4%"> @Html.LabelFor(p => Model(0).ordinario)</td>
                                        <td width="4%"> @Html.LabelFor(p => Model(0).extraordinario)</td>
                                        <td width="4%"> @Html.LabelFor(p => Model(0).titulo)</td>
                                        <td width="3%"> </td>
                                    </tr>
                                </thead>
                                <tbody>
                                    @foreach (var item in Model)
                                    {
                                        <tr>
                                            <td>@item.idcalificacion </td>
                                            <td>@item.cve_unica </td>
                                            <td>@item.ape_pat</td>
                                            <td>@item.ape_mat</td>
                                            <td>@item.nombres</td>
                                            <td>@item.parcial1</td>
                                            <td>@item.parcial2</td>
                                            <td>@item.parcial3</td>
                                            <td>@item.ordinario</td>
                                            <td>@item.extraordinario</td>
                                            <td>@item.titulo</td>
                                            <td>
                                                <button type="button" onclick="Editar(@item.idcalificacion)" class="btn btn-success btn-primary glyphicon glyphicon-edit" data-toggle="modal" data-target="#exampleModal">
                                                    Calificar
                                                </button>
                                            </td>
                                        </tr>
                                    }
                                </tbody>

                            </table>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

Aquí la vista Index.cshtml

@using Calificaciones.Models
@model List<MisCalificacionesCLS>
    @{
        Layout = "~/Views/Shared/_Layout.cshtml";
        ViewBag.Controlador = "MisGrupos";
        ViewBag.Title = "Alumnos";
    }
    <div class="row">
        <div class="col-lg-12">
            <div class="card card-outline-info">
                <div class="card-header">
                    <h5 class="mb-0 text-white">
                        <label class="text-dark font-bold">Grupo :  </label><label class="control-label font-bold tex">@Model(0).cve_gpo</label>
                        <label class="text-dark font-bold">Carrera :</label><label class="control-label font-bold tex">@Model(0).nombre_carrera</label>
                        <label class="text-dark font-bold">Clave Materia :</label><label class="control-label font-bold tex">@Model(0).cve_mat </label>
                        <label class="text-dark font-bold">Materia :</label><label class="control-label font-bold tex">@Model(0).nombre_materia</label>
                        <label class="text-dark font-bold">Ciclo :  </label><label class="control-label font-bold tex">@Model(0).cic_esc</label>
                        <label class="text-dark font-bold">Período :</label><label class="control-label font-bold tex">@Model(0).per_imp</label>
                    </h5>
                </div>
            </div>
        </div>
    </div>
    
    @using (Ajax.BeginForm("Filtro", "", new AjaxOptions
    {
        HttpMethod = "POST",
        UpdateTargetId = "divParciales",
        InsertionMode = InsertionMode.Replace
    }, new { @id = "frmFiltro" }))
    {
        @*@Html.Label("Filtrar por Clave Única de Alumno(a):")
            @Html.TextBox("cve_unica", null, new { @class = "form-control" })*@
        <div id="divParciales">
            @Html.Partial("_Parciales", Model)
        </div>
    }
    
    <!-- Modal -->
    <div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title" id="exampleModalLabel">Parciales</h5>
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                        <span aria-hidden="true">&times;</span>
                    </button>
                </div>
                @using (Ajax.BeginForm("Guardar", "LosAlumnos", null, new AjaxOptions
                {
                    HttpMethod = "POST",
                    OnSuccess = "Guardar",
                    UpdateTargetId = "error"
                }))
                {
                    @Html.Hidden("titulo")
                    <div class="modal-body">
                        <div>
                            <h5 class="modal-title" id="exampleModalLabel">Calificando a:</h5>
                            @Html.TextBox("cve_unica", null, new { @class = "form-control", @readOnly = true })
                            @Html.TextBox("nombre_completo", null, new { @class = "form-control", @readOnly = true })<br />
                        </div>
                        <div>
                            @Html.Label("Calificación Parcial 1 (SD / NP / Valor Decimal)")
                            @Html.TextBox("parcial1", null, new { @class = "form-control" })
                        </div>
                        <div>
                            @Html.Label("Calificación Parcial 2 (SD / NP / Valor Decimal)")
                            @Html.TextBox("parcial2", null, new { @class = "form-control" })
                        </div>
                        <div>
                            @Html.Label("Calificación Parcial 3 (SD / NP / Valor Decimal)")
                            @Html.TextBox("parcial3", null, new { @class = "form-control" })
                        </div>
                    </div>
                    <div class="modal-footer">
                        <button type="button" id="btnClose" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>
                        <button type="submit" class="btn btn-success btn-primary">Actualizar Calificaciones</button>
                    </div>
                }
                <div id="error"></div>
            </div>
        </div>
    </div>
    
    
    <script>
        function Limpiar() {
            document.getElementById("parcial1").value = "";
            document.getElementById("parcial2").value = "";
            document.getElementById("parcial3").value = "";
            document.getElementById("cve_unica").value = "";
            document.getElementById("nombre_completo").value = "";
            document.getElementById("error").innerHTML = "";
        }
    
        function Agregar() {
            Limpiar();
            document.getElementById("error").innerHTML = "";
            document.getElementById("titulo").value = -1;
        }
    
        function Guardar(resultado) {
            if (resultado == "1" || resultado == "0") {
                $("#frmFiltro").trigger("submit");
                document.getElementById("btnClose").click();
                alert("Se Guardo Correctamente");
            }
            else {
                if (resultado == "-1") {
                    alert("Ya existe en la base de datos");
                    document.getElementById("error").innerHTML = "";
                }
                else
                    alert("Ocurrio un error");
            }
        }
    
        function Editar(id) {
            Limpiar();
            document.getElementById("error").innerHTML = "";
            document.getElementById("titulo").value = id;
    
            $.get("LosAlumnos/RecuperaCalificaciones/?_idcalificacion=" + id, function (data) {
                document.getElementById("cve_unica").value = data.cve_unica;
                document.getElementById("nombre_completo").value = data.nombre_alumno;
                document.getElementById("parcial1").value = data.parcial1;
                document.getElementById("parcial2").value = data.parcial2;
                document.getElementById("parcial3").value = data.parcial3;
    
            })
    
        }
    </script>

La funcion Editar recibe el ID correctamente y se llama a la acción que nos regresa un Json y se muestran los datos y al dar clic en Actualizar Calificaciones desconozco si entra a la funcion del Script Guardar(resultado) lo que creo sucede ya que no llama al DIV que contiene la vista parcial. Y solo me retorna un 1 y cambia en la barra de dirección la ruta…

introducir la descripción de la imagen aquí

No se a que se deba que no me deje de nueva cuenta en el listado para continuar editando a otros registros, que es lo que pretendo…

Agradezco su atención y su orientación para mi problema…

Gracias.

android – ¿Por qué WorkManager deja de funcionar?

Tengo una clase en android que extiende a Worker para mandar notificaciones aun cuando la aplicación se quite de la lista de espera ejecutándose cada 5 minutos. Cuando muestro la notificación enseguida vuelva a ejecutar un nuevo OneTimeWorkRequest con ExistingWorkPolicy.REPLACE, funciona muy bien por determinado tiempo y después ya no sale ninguna notificación hasta que vuelvo abrir la aplicación.