Foros del Web » Programando para Internet » PHP »

Php4 -> Php5

Estas en el tema de Php4 -> Php5 en el foro de PHP en Foros del Web. instale PHP5, suponiendo que no iba a tener grandes novedades... pero ahora un script que funcionaba con PHP4 ya no lo hace... alguno sabe xq? ...
  #1 (permalink)  
Antiguo 07/04/2006, 11:30
 
Fecha de Ingreso: agosto-2003
Mensajes: 120
Antigüedad: 14 años, 3 meses
Puntos: 0
Php4 -> Php5

instale PHP5, suponiendo que no iba a tener grandes novedades... pero ahora un script que funcionaba con PHP4 ya no lo hace...

alguno sabe xq?

Código:
if (mysql_num_rows($query)){

$new = true;
echo "{\"files\":[";

while ($row = @mysql_fetch_array($query)) {
	if ($new){
	echo "{\"nombre\":\"".htmlspecialchars($row['nombre'])."\",
	  	  \"pdf\":\"".htmlspecialchars($row['link'])."\",
		  \"www\":\"".htmlspecialchars($row['www'])."\",
		  \"image\":\"".htmlspecialchars($row['image'])."\",
		  \"descripcion\":\"".htmlspecialchars($row['text'])."\"}";
	$new = false;
	} else {
  	echo ",{\"nombre\":\"".htmlspecialchars($row['nombre'])."\",
	  	  \"pdf\":\"".htmlspecialchars($row['link'])."\",
		  \"www\":\"".htmlspecialchars($row['www'])."\",
		  \"image\":\"".htmlspecialchars($row['image'])."\",
		  \"descripcion\":\"".htmlspecialchars($row['text'])."\"}";
	}
	}

echo "]}";
}
gracias!
  #2 (permalink)  
Antiguo 07/04/2006, 11:37
Avatar de JorgitoAlfajor  
Fecha de Ingreso: enero-2006
Mensajes: 152
Antigüedad: 11 años, 11 meses
Puntos: 1
¿Y cuál es el error que te esta dando?
__________________
¿Se me entiende la letra?
  #3 (permalink)  
Antiguo 07/04/2006, 11:40
 
Fecha de Ingreso: agosto-2003
Mensajes: 120
Antigüedad: 14 años, 3 meses
Puntos: 0
no devuelve nada..
si pongo un echo antes de "if (mysql_num_rows($query)){" lo devuelve bien.

sin embargo, no devuelve echo "{\"files\":[";

no es problema de que la consulta a la bbdd venga vacia, porque en PHP4 obtengo los resultados. (este mismo script en PHP4 funciona bien)
  #4 (permalink)  
Antiguo 07/04/2006, 11:45
Avatar de JorgitoAlfajor  
Fecha de Ingreso: enero-2006
Mensajes: 152
Antigüedad: 11 años, 11 meses
Puntos: 1
¿Comprobaste que la consulta se haya ejecutado correctemente? ¿Tenés habitala la extensión para mysql? Desde php 5 esta extensión no esta habilitada por defecto.
Saludos.
__________________
¿Se me entiende la letra?
  #5 (permalink)  
Antiguo 07/04/2006, 11:48
 
Fecha de Ingreso: agosto-2003
Mensajes: 120
Antigüedad: 14 años, 3 meses
Puntos: 0
me imagino q si.. phpmyadmin esta funcionando... y otra consulta anterior de otro script funciono
  #6 (permalink)  
Antiguo 07/04/2006, 11:52
Avatar de JorgitoAlfajor  
Fecha de Ingreso: enero-2006
Mensajes: 152
Antigüedad: 11 años, 11 meses
Puntos: 1
¿Tenés algún "echo mysql_error()" para que te informe los errores?
__________________
¿Se me entiende la letra?
  #7 (permalink)  
Antiguo 07/04/2006, 12:03
 
Fecha de Ingreso: agosto-2003
Mensajes: 120
Antigüedad: 14 años, 3 meses
Puntos: 0
si, pero no hay error...
  #8 (permalink)  
Antiguo 07/04/2006, 12:17
Avatar de JorgitoAlfajor  
Fecha de Ingreso: enero-2006
Mensajes: 152
Antigüedad: 11 años, 11 meses
Puntos: 1
¿Hiciste un echo mysql_num_rows($query) para saber si hay alguna fila en el resultado? Tambíen podés probar habilitar todos los errores (con "error_reporting(E_ALL);") y sacarle los "@" delante de las llamadas a las funciones, para ver si hay algún error.
Saludos.
__________________
¿Se me entiende la letra?
  #9 (permalink)  
Antiguo 07/04/2006, 12:31
 
Fecha de Ingreso: agosto-2003
Mensajes: 120
Antigüedad: 14 años, 3 meses
Puntos: 0
es verdad, el numero me da 0...
el problema esta aca:

$cat = $HTTP_GET_VARS["cat"];
$subcat = $HTTP_GET_VARS["subcat"];

las variables aparecen como vacias... y esas variables las uso en la consulta SQL
asi llamo al archivo:
files.php?cat=Cabecera&subcat=Conectores
  #10 (permalink)  
Antiguo 07/04/2006, 12:36
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 13 años, 9 meses
Puntos: 0
primero que nada no te devolvera error por que tienes @mysql_fetch_array($query) y si mis profes eran buenos me dijeron que ese @ no mostraba errores, si no que continuaba con la sgte linea.

saca ese @ y ademas al fina pon or die(mysql_error())

asi sabremos que no esta haciendo, o tambien puedes hacer un echo a la consulta en si para ver que valores lleva.

saludos
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #11 (permalink)  
Antiguo 07/04/2006, 12:41
Avatar de JorgitoAlfajor  
Fecha de Ingreso: enero-2006
Mensajes: 152
Antigüedad: 11 años, 11 meses
Puntos: 1
Probá con:

Código PHP:
<?
$cat 
$_GET['cat'];
$subcat $_GET['subcat'];
?>
Saludos.
__________________
¿Se me entiende la letra?
  #12 (permalink)  
Antiguo 07/04/2006, 12:46
 
Fecha de Ingreso: agosto-2003
Mensajes: 120
Antigüedad: 14 años, 3 meses
Puntos: 0
eso es! muchas gracias!

xq no acepta mas el HTTP_GET_VARS??
  #13 (permalink)  
Antiguo 07/04/2006, 12:52
Avatar de JorgitoAlfajor  
Fecha de Ingreso: enero-2006
Mensajes: 152
Antigüedad: 11 años, 11 meses
Puntos: 1
En realidad, creo que la única diferencia es que $_GET (y $_POST y demás) son superglobales, y $HTTP_GET_VARS no. Es decir si utilizas $HTTP_GET_VARS dentro de una funcion sin declarala como global no funcionará (¿estabas haciendo eso?). Igualmente, de ahora en más deberias utilizar siempre las matrices superglobales, ya que quizá en un futuro $HTTP_GET_VARS y demas desaparezcan.
Saludos.
__________________
¿Se me entiende la letra?
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 13:28.