validar solucion saber registro inserto existe este error ejecutar como antes php mysql sql database pdo

php - solucion - Actualizando Columna SQL



validar insert mysql (1)

Primero asegúrese de que $column esté en una lista aceptada de valores. A continuación, no puede enlazar :column lo tendrá asignar así:

$stmt = $link->prepare(''UPDATE table SET '' . $column .'' = :num''); $stmt->bindParam('':num'', $num); $stmt->execute();

Si fuera a buscar una $column válida, la usaría

$valid_column = preg_match(''/[a-z0-9_]/i, $column);

o un reemplazo suficiente ( preg_replace ). Aunque es probable que lo envuelva en un try / catch y establezca excepciones que se lanzarán en su instancia de PDO para asegurarse de que sea legítimo.

Entonces tengo una tabla con 6 columnas, cada columna corresponde a un cierto tipo de producto. Cada columna contiene un número que corresponde a la cantidad de veces que las personas han elegido ese tipo de producto.

A | B | C | D | E | F --------------------- 0 | 0 | 0 | 0 | 0 | 0

Entonces, si el usuario elige el tipo A , entonces quiero actualizar el número de la columna A de 0 a 1 . Así que aquí está el código SQL que escribí:

$link = new PDO(''***;dbname=***;charset=UTF-8'',''***'',''***''); $stmt = $link->prepare("UPDATE table SET :column=:num"); $stmt->bindParam('':column'', $column); $stmt->bindParam('':num'', $num); $stmt->execute();

Pero no está actualizando nada en absoluto. Así que supongo que hay algo mal con el código SQL, lo más probable es que tenga que ver con el marcador de :column . ¿Alguien puede decirme el código SQL correcto ?