Foros del Web » Programando para Internet » PHP »

mysql_fetch_row()

Estas en el tema de mysql_fetch_row() en el foro de PHP en Foros del Web. hola, estoy pasando una pagina que esta en una computadora personal que funciona como servidor a un servidor web online en un momento uso este ...
  #1 (permalink)  
Antiguo 18/12/2010, 19:33
 
Fecha de Ingreso: marzo-2005
Mensajes: 8
Antigüedad: 19 años, 8 meses
Puntos: 0
mysql_fetch_row()

hola, estoy pasando una pagina que esta en una computadora personal que funciona como servidor a un servidor web online

en un momento uso este codigo que funcionaba perfecto

Código PHP:
function restaDias($fecha2){
$time time();
$fech1date("Y-m-d");
$fech2=$fecha2;
$dias="SELECT DATEDIFF('$fech2 23:59:59','$fech1')";
$result=mysql_query($dias);
$diasarr mysql_fetch_row$result );
$dias2$diasarr[0];
return 
$dias2;

y me tira un error:
Código HTML:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /1/ar/com/b/e/r/pagina.com.ar/htdocs/hojas/funciones.php on line 11

nota en el servidor viejo:
si hago un: echo $result;
devuelve esto: Resource id #17
en el nuevo tira el error del warning antes mensionado


tengo problemas con mysql_fetch_row()
me estoy olvidando de declarar algo en el nuevo servidor???
como puedo solucionar esto


saludos
zulo
  #2 (permalink)  
Antiguo 18/12/2010, 20:00
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: mysql_fetch_row()

¿Estás conectando al servidor de la base de datos? ¿La conexión es correcta?

P.S.: ¿Por qué no realizas la operación directamente con las funciones de fecha/hora de PHP?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 18/12/2010, 20:32
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 7 meses
Puntos: 461
Respuesta: mysql_fetch_row()

pues como siempre decimos aca cuando estes en la fase de desarrollo siempre es bueno ver el error que te da mysql
Código PHP:
Ver original
  1. mysql_query(/*tu consulta*/) or die(mysql_error());
saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #4 (permalink)  
Antiguo 19/12/2010, 05:51
 
Fecha de Ingreso: marzo-2005
Mensajes: 8
Antigüedad: 19 años, 8 meses
Puntos: 0
Respuesta: mysql_fetch_row()

gracias por contestar tan rapido

si agrego esto que dice carlos:
Código PHP:
$result=mysql_query($dias) or die(mysql_error()); 
el error cambia por esto:
Código HTML:
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '('2010-12-19 23:59:59','2010-12-19')' at line 1
esta funcion restaDias() esta en un archivo aparte que lo llamo con un include
Código PHP:
include("funciones.php"); 
supustamente si se esta conectando a la base de datos ya que esta funcionando sin problemas en otra computadora y el resto del sitio trabaja bien con las consultas mySql

david: no se como seria restar de 2 fechas por php, si tenes algo para mirar le pego un vistazo


desde ya muchas gracias
  #5 (permalink)  
Antiguo 19/12/2010, 07:33
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 7 meses
Puntos: 461
Respuesta: mysql_fetch_row()

pues use tu funcion y no me dio el error sql que estas comentando seguro que la tienes tal cual como lo colocaste al principio?? fijate como la use

Código PHP:
Ver original
  1. function restaDias($fecha2){   
  2.     $time = time();
  3.     $fech1= date("Y-m-d"); 
  4.     $dias="SELECT DATEDIFF('$fecha2 23:59:59','$fech1') as dia";   
  5.     $result=mysql_query($dias) or die (mysql_error());
  6.     $diasarr = mysql_fetch_array( $result );   
  7.     $dias2= $diasarr['dia'];
  8.     return $dias2;
  9. }  
  10. restaDias('2010-12-20');
por cierto hay variables que no utilizas dentro de la funcion como $time, ademas de que el parametro lo puedes colocar directamente en la sentencia sql, prueba y nos comentas, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #6 (permalink)  
Antiguo 19/12/2010, 23:53
 
Fecha de Ingreso: marzo-2005
Mensajes: 8
Antigüedad: 19 años, 8 meses
Puntos: 0
Respuesta: mysql_fetch_row()

el codigo es el mismo y en mi computadora funciona bien

tengo entendido que en mi plan de hosting tengo algunas limitaciones
(ej.) tuve que cambiar el PATH porque no me reconocia el estandar


busque un codigo en php y lo acomode para que me haga lo mismo sin usar la funcion DATEDIFF()

Código PHP:
function restaDias($dFecIni){
$dFecFin date("Y-m-d");
$dFecIni str_replace("-","",$dFecIni);
$dFecIni str_replace("/","",$dFecIni);
$dFecFin str_replace("-","",$dFecFin);
$dFecFin str_replace("/","",$dFecFin);
ereg"([0-9]{4})([0-9]{1,2})([0-9]{2,4})"$dFecIni$aFecIni);
ereg"([0-9]{4})([0-9]{1,2})([0-9]{2,4})"$dFecFin$aFecFin);
$date1 mktime(0,0,0,$aFecIni[2], $aFecIni[3], $aFecIni[1]);
$date2 mktime(0,0,0,$aFecFin[2], $aFecFin[3], $aFecFin[1]);
$resultado round((-$date2 $date1) / (60 60 24));
return 
$resultado;
}
echo 
restaDias("2010-12-30"); 
por ahora funciona, habria que pulirlo mas al codigo porque lei que la funcion EREG() esta media obsoleta

gracias por las respuestas anteriores
saludos

Etiquetas: Ninguno
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 21:31.