Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ayuda con este UPDATE

Estas en el tema de Ayuda con este UPDATE en el foro de Mysql en Foros del Web. Quisiera que me ayudaran con lo siguiente: Tengo una tabla llamada advantages con 1 campo llamado img1 Hago lo siguiente: Código PHP: mysql_select_db ( $database_conexion ...
  #1 (permalink)  
Antiguo 17/02/2011, 10:33
 
Fecha de Ingreso: agosto-2008
Mensajes: 108
Antigüedad: 15 años, 8 meses
Puntos: 0
Ayuda con este UPDATE

Quisiera que me ayudaran con lo siguiente:
Tengo una tabla llamada advantages con 1 campo llamado img1

Hago lo siguiente:
Código PHP:
mysql_select_db($database_conexion$conexion);
        
$query_rs1 "update advantages set img1 = '" $_REQUEST["img"] . "'";
        
$rs1 mysql_query($query_rs1$conexion) or die(mysql_error());
        
$row_rs1 mysql_fetch_assoc($rs1);
        
$totalRows_rs1 mysql_num_rows($rs1); 
me da el siguiente error:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\geminik9\advantages.php on line 15 (donde linea 15 es $rs1=mysql...)

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\geminik9\advantages.php on line 16

Lo peor es que despues de esto, funciona correctamente, me actualiza el campo.
  #2 (permalink)  
Antiguo 18/02/2011, 03:42
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Ayuda con este UPDATE

Tu problema no es de bases de datos si no de PHP deberías preguntar en el foro adecuado.

Warning: mysql_fetch_assoc()...

la linea 15 debe ser la siguiente $row_rs1 = mysql_fetch_assoc($rs1); en lla que dices tu no esta esa función.

Te esta diciendo que $rs1 no es un parametro valido para mysql_fetch_assoc y no lo es puesto que una query UPDATE no retorna un conjunto de resultados que puedas convertir en un array, que es lo que hace mysql_fetch_assoc.


Manual


Cita:
mysql_query

Valores devueltos

Para SELECT, SHOW, DESCRIBE, EXPLAIN y otras sentencias que retornan un recordset, mysql_query() retorna un resource en caso de éxito, o FALSE en caso de error.

Para otros tipos de sentencias SQL, tales como INSERT, UPDATE, DELETE, DROP, etc, mysql_query() retorna TRUE en caso de éxito o FALSE en caso de error.

El resultset de respuesta retornado debería ser pasado a mysql_fetch_array(), y otras funciones para manejar el resultado de las tablas y para acceder a los datos retornados.

Use mysql_num_rows() para conocer cuantos registros fueron retornados por la sentencia SELECT o mysql_affected_rows() para conocer cuantos registros fueron afectados por las sentencias DELETE, INSERT, REPLACE, o UPDATE.

mysql_query() también fallará y retornará FALSE si el usuario no está autorizado para acceder a la(s) tabla(s) referenciada(s) por la consulta.
Luego es normal que UPDATE se haya ejecutado correctamente.

Elimina la linea

$row_rs1 = mysql_fetch_assoc($rs1);

y cambia la siguiente por

$totalRows_rs1 = mysql_affected_rows ($conexion);
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 18/02/2011 a las 03:57

Etiquetas: update
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:05.