Foros del Web » Programando para Internet » PHP »

un script no me anda en algunos hostings

Estas en el tema de un script no me anda en algunos hostings en el foro de PHP en Foros del Web. Hola, no sabia si poner esta pregunta aqui o en la parte de hosting, si esta mal ponganla donde corresponda. Trate de hacer una paginacion ...
  #1 (permalink)  
Antiguo 17/02/2011, 02:37
Avatar de waldragon  
Fecha de Ingreso: mayo-2010
Mensajes: 735
Antigüedad: 13 años, 9 meses
Puntos: 55
Pregunta un script no me anda en algunos hostings

Hola, no sabia si poner esta pregunta aqui o en la parte de hosting, si esta mal ponganla donde corresponda.

Trate de hacer una paginacion en una web alojada gratis en 000webhost, y no funciono el script, y luego para sacarme la duda lo probe en un hosting que pago en hostrentable y si funciono, alguien sabe por que puede ser que ande en uno y en otro no? y como puedo hacer para que funcione en 000webhost?

este es el codigo de paginacion:

<?

function conectar()
{
$base_de_datos = "*******";
$db_usuario = "************";
$db_password = "****************";

if (!($link = mysql_connect("localhost", $db_usuario, $db_password)))
{
echo "Error conectando a la base de datos.";
exit();
}
if (!mysql_select_db($base_de_datos, $link))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $link;
}

$db = conectar();


$registros = 3;

if (!$pagina) {
$inicio = 0;
$pagina = 1;
}
else {
$inicio = ($pagina - 1) * $registros;
}


?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Noticias</title>
<style>
body { font-family: arial; font-size:12px}
</style>
</head>

<body>
<?
$resultados = mysql_query("SELECT id FROM articulo");
$total_registros = mysql_num_rows($resultados);
$resultados = mysql_query("SELECT * FROM articulo ORDER BY id DESC LIMIT $inicio, $registros");
$total_paginas = ceil($total_registros / $registros);

if($total_registros) {

while($articulo=mysql_fetch_array($resultados)) {

echo "<b>".$articulo["nombre"]."</b><br>";
echo "<font color='#666666'>".$articulo["descripcion"]."</font><br><br><br>";

}

} else {
echo "<font color='darkgray'>(sin resultados)</font>";
}

mysql_free_result($resultados);

if($total_registros) {

echo "<center>";

if(($pagina - 1) > 0) {
echo "<a href='paginacion.php?pagina=".($pagina-1)."'>< Anterior</a> ";
}

for ($i=1; $i<=$total_paginas; $i++){
if ($pagina == $i) {
echo "<b>".$pagina."</b> ";
} else {
echo "<a href='paginacion.php?pagina=$i'>$i</a> ";
}
}

if(($pagina + 1)<=$total_paginas) {
echo " <a href='paginacion.php?pagina=".($pagina+1)."'>Sigui ente ></a>";
}

echo "</center>";

}
?>
</body>
</html>
<? mysql_close($db);?>
  #2 (permalink)  
Antiguo 17/02/2011, 02:47
Avatar de carlosdurannet  
Fecha de Ingreso: febrero-2011
Ubicación: Aranjuez, Madrid
Mensajes: 13
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: un script no me anda en algunos hostings

Puede ser por el 'short tag', es decir, que estás usando '<?' que solo funciona si el PHP tiene activado la opcion 'short open tag', cosa que sucede en unos hosting si, y en otros no. La mejor solución que veo es que cambies al metodo universal que es abrir el código PHP con '<?php'. Así quedaría tu código:

Código:
<?php

function conectar() 
{ 
$base_de_datos = "*******";
$db_usuario = "************"; 
$db_password = "****************"; 

if (!($link = mysql_connect("localhost", $db_usuario, $db_password))) 
{ 
echo "Error conectando a la base de datos."; 
exit(); 
} 
if (!mysql_select_db($base_de_datos, $link)) 
{ 
echo "Error seleccionando la base de datos."; 
exit(); 
} 
return $link; 
} 

$db = conectar();


$registros = 3;

if (!$pagina) { 
$inicio = 0; 
$pagina = 1; 
} 
else { 
$inicio = ($pagina - 1) * $registros; 
} 


?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Noticias</title>
<style>
body { font-family: arial; font-size:12px}
</style>
</head>

<body>
<?php
$resultados = mysql_query("SELECT id FROM articulo");
$total_registros = mysql_num_rows($resultados); 
$resultados = mysql_query("SELECT * FROM articulo ORDER BY id DESC LIMIT $inicio, $registros");	
$total_paginas = ceil($total_registros / $registros); 

if($total_registros) {

while($articulo=mysql_fetch_array($resultados)) {

echo "<b>".$articulo["nombre"]."</b><br>";
echo "<font color='#666666'>".$articulo["descripcion"]."</font><br><br><br>";

}

} else {
echo "<font color='darkgray'>(sin resultados)</font>";
}

mysql_free_result($resultados);	

if($total_registros) {

echo "<center>";

if(($pagina - 1) > 0) {
echo "<a href='paginacion.php?pagina=".($pagina-1)."'>< Anterior</a> ";
}

for ($i=1; $i<=$total_paginas; $i++){ 
if ($pagina == $i) {
echo "<b>".$pagina."</b> "; 
} else {
echo "<a href='paginacion.php?pagina=$i'>$i</a> "; 
}	
}

if(($pagina + 1)<=$total_paginas) {
echo " <a href='paginacion.php?pagina=".($pagina+1)."'>Sigui ente ></a>";
}

echo "</center>";

}
?>
</body>
</html>
<?php mysql_close($db);?>
Espero te sirva
  #3 (permalink)  
Antiguo 17/02/2011, 13:50
Avatar de waldragon  
Fecha de Ingreso: mayo-2010
Mensajes: 735
Antigüedad: 13 años, 9 meses
Puntos: 55
Respuesta: un script no me anda en algunos hostings

No dio resultado, aqui pueden ver que es lo que pasa:
http://mensajes.site88.net/paginacion.php
Es raro porque he visto foros y blogs en 000webhost, y a todos les funciona la paginacion, alguien sabe otro codigo que sirva para hacer lo mismo? gracias.

Etiquetas: paginacion
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 02:56.