Saltar al contenido

PHP MySQL INSERTAR valor de retorno con una ejecución de consulta

Mario, miembro de este gran equipo, nos ha hecho el favor de crear este tutorial ya que domina a la perfección el tema.

Solución:

INSERTAR solo regresa true o false. para devolver algo útil, necesitará una consulta SELECT o similar. no hay ningún resultado para buscar con INSERT.

De la documentación de php:

Valores devueltos para SELECT, SHOW, DESCRIBE, EXPLAIN y otras declaraciones que devuelven un conjunto de resultados, mysql_query() devuelve un recurso en caso de éxito, o FALSE en error

Para otro tipo de sentencias SQL, INSERT, UPDATE, DELETE, DROPetc, mysql_query() devoluciones TRUE en el éxito o FALSE en error

El recurso de resultado devuelto debe pasarse a mysql_fetch_array()y otras funciones para manejar tablas de resultados, para acceder a los datos devueltos.

Usar mysql_num_rows() para averiguar cuántas filas se devolvieron para un SELECT statement o mysql_affected_rows() para averiguar cuántas filas se vieron afectadas por un DELETE, INSERT, REPLACEo UPDATE statement.

mysql_query() también fallará y volverá FALSE si el usuario no tiene permiso para acceder a las tablas a las que hace referencia la consulta.

Aunque este es un hilo muy antiguo, sigue siendo relevante. Y a los que tropiecen con esto (como me pasó a mí), ¡no se rindan! Hay opciones. De hecho, vea esta respuesta en SO

Además, para sqli y pdo, vea esto

Esencialmente, una declaración de inserción seguida de una de las funciones enumeradas en esas respuestas le dará la ID del último registro. La función se usa así:

$LastID = mysql_insert_id();

después de la sentencia INSERT.

Recuerda compartir este artículo si te valió la pena.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *