Soy nuevo en PHP y quiero crear un script que actualice los nombres y apellidos de los usuarios si necesitan hacerlo. Tengo el código a continuación y termina haciendo eco UPDATE fixableusers SET first='trenton' WHERE id='6' en la página settings.inc.php pero no está actualizando la tabla. ¿Hay alguna razón por la que no está actualizando la tabla?

<?php
include_once('dbh.php');

session_start();
$userSession = $_SESSION['id'];

if(isset($_SESSION['id'])) {
    $postTest = $_POST['first'];
    $sql = "UPDATE fixableusers SET first='$postTest' WHERE id='$userSession'";
} else {
    echo 'Do something else';
}

Mi archivo dbh.php incluye el siguiente código:

<?php

$conn = mysqli_connect('localhost', 'root', 'root', 'users');
3
Trenton Tyler 23 dic. 2016 a las 06:17

3 respuestas

La mejor respuesta

Está excluyendo la función mysqli_query,

Agregue esto mysqli_query($conn, $sql); después de construir el $sql.

5
Naga 23 dic. 2016 a las 04:10
<?php
// Connect your DB
include_once('dbh.php');

//Start Session    
session_start();

if(isset($_SESSION['id'])) {

// Update Query
$updateqry = "UPDATE fixableusers SET first='".$_POST['first']."' WHERE id='".$_SESSION['id']."'";
mysqli_query($conn, $updateqry);

} else {

        echo 'Do something else';
}

?>
1
Karthik 23 dic. 2016 a las 09:09

Dentro de su declaración if solo está declarando variables, para ejecutar realmente una consulta necesita:
if (isset ($ _ SESSION ['id'])) { $ postTest = $ _POST ['first']; $ sql = "ACTUALIZAR usuarios reparables SET first = '$ postTest' WHERE id = '$ userSession'"; mysqli_query ($ conn, $ sql); }

Y necesita mejorar esto (manejar errores ... etc.)

1
Taki 23 dic. 2016 a las 03:28