Foros del Web » Programando para Internet » PHP »

problema con errores

Estas en el tema de problema con errores en el foro de PHP en Foros del Web. tengo un problema, q ha aparecido cuando he subido la pagina a un servidor, xq en local funciona. el error que da es el siguiente: ...
  #1 (permalink)  
Antiguo 19/08/2005, 11:43
 
Fecha de Ingreso: agosto-2005
Mensajes: 65
Antigüedad: 18 años, 8 meses
Puntos: 0
problema con errores

tengo un problema, q ha aparecido cuando he subido la pagina a un servidor, xq en local funciona.
el error que da es el siguiente:

Notice: Use of undefined constant - assumed ' ' in ......

se q esto se puede solucionar ocultando los errores, xo no kiero eso, kiero saber xq pasa, q hago mal, les pongo el codigo de una funcion donde aparece el error.

Código PHP:
<link href="estilos.css" rel="stylesheet" type="text/css"> <?php 
function MostrarAdmin($link)
{
$result=mysql_query("Select * From Admin",$link);
while(
$row=mysql_fetch_array($result))
printf('
         <tr class="D" valign="middle">
           <td align="center">'
.$row["Login"].'</a></td>
           <td align="center">'
.$row["Provincia"].'</td>
           <td align="center">'
.$row["Email"].'</td>
        <td align="center"><a href=EliminarAdmin.php?id='
.$row["Login"].'><img alt="Borrar" src="imagenes/borrar.gif" border=0></a></td>
        </tr>'
);
mysql_free_result($result);
mysql_close($link);

?>
no se que error hay....me vuelvo loko, gracias
  #2 (permalink)  
Antiguo 19/08/2005, 13:25
 
Fecha de Ingreso: octubre-2003
Mensajes: 152
Antigüedad: 20 años, 5 meses
Puntos: 2
mmmmmm, poner todo el errror y todo el codigo mejor
__________________
Mamani Calderón, Edwin Fredy
Ingeniería de Sistemas www.gruposistemas.com
  #3 (permalink)  
Antiguo 19/08/2005, 13:29
 
Fecha de Ingreso: mayo-2003
Mensajes: 148
Antigüedad: 20 años, 11 meses
Puntos: 0
Si pones todo el error lo mismo se te puede ayudar y todo.. jajaja ;)
  #4 (permalink)  
Antiguo 19/08/2005, 14:02
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
http://www.forosdelweb.com/f18/como-preguntar-foro-php-cosas-tener-cuenta-295415/

El error te dice que existe una constante que no esta definida... ó bien no la definiste ó "algo" (una variable) te lo esta interpretando como constante... puede ser un problema de sintaxis.

No se te puede decir exáctamente qué porque no marcas el error exácto y la línea implicada... quiero adivinar es por el uso de la función printf()

Lo correcto sería algo como:
Código PHP:
printf("<td align=\"center\">%s</a></td>"$row['algo']); 
> Primero indicar el tipo de dato que haz de imprimir (%s= cadena) y posteriormente la fuente de dicho dato ($row['algo']). Lee bien la documentación oficial.. aunque para no liarte te dirría que hagas uso de un simple echo.

Y repito... simplemente adivinando ese sea el motivo del error... Lee bien el enlace que dejé en un comienzo.

__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #5 (permalink)  
Antiguo 19/08/2005, 14:35
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 3 meses
Puntos: 7
Sobre lo del printf no tiene ningun implicancia en el error que le muestra..., es perfectamente válido hacer:
$var = "foo";
printf("Variable: $var"); // o
printf("%s", $var);

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #6 (permalink)  
Antiguo 20/08/2005, 01:02
 
Fecha de Ingreso: agosto-2005
Mensajes: 65
Antigüedad: 18 años, 8 meses
Puntos: 0
lo primero, gracias x las respuestas y perdonad x no detallar mas

os pongo el mismo error pero en otra funcion:

Notice: Use of undefined constant - assumed ' ' in E:\webs\clientes\campusfutbolcregoredero\www\grima \MostrarCategorias.php on line 11

Código PHP:
<link href="estilos.css" rel="stylesheet" type="text/css"> <?php 
function MostrarCategorias($link)
{

$result=mysql_query("Select * From Categorias Order By ID",$link);
while(
$row=mysql_fetch_array($result))
printf('<tr><td class="VinculoCat"><a href=ShowCat.php?id='.$row["ID"].' class="VinculoCat">'.$row["Nombre"].'</a></td></tr>');
mysql_free_result($result);


?>
Ante todo daros las gracias. Saludos!

Última edición por roberJ; 20/08/2005 a las 01:04 Razón: Me equivoque de funcion
  #7 (permalink)  
Antiguo 20/08/2005, 06:51
 
Fecha de Ingreso: octubre-2003
Mensajes: 152
Antigüedad: 20 años, 5 meses
Puntos: 2
no encuentro el error, bueno supongo que es error de tu server, porque normal funciona en los demas server.

Ademas me parece que no hay ningun error en la linea 11 de tu codigo del archivo MostrarCategorias.php
__________________
Mamani Calderón, Edwin Fredy
Ingeniería de Sistemas www.gruposistemas.com
  #8 (permalink)  
Antiguo 20/08/2005, 07:33
 
Fecha de Ingreso: noviembre-2003
Ubicación: Torrelodones
Mensajes: 134
Antigüedad: 20 años, 5 meses
Puntos: 0
prueba a poner dentro del codigo html del printf una comilla simple en vez de dos. Bueno, quedaria mas o menos asi

<link href="estilos.css" rel="stylesheet" type="text/css"> <?php
function MostrarAdmin($link)
{
$result=mysql_query("Select * From Admin",$link);
while($row=mysql_fetch_array($result))
printf("
<tr class='D' valign='middle'>
<td align='center'>%s</a></td>
<td align='center'>%s</td>
<td align='center'>%s</td>
<td align='center'><a href='EliminarAdmin.php?id=%s'><img alt='Borrar' src='imagenes/borrar.gif' border=0></a></td>
</tr>",$row['Login'],$row['Provincia'],$row['Email'],$row['Login']);
mysql_free_result($result);
mysql_close($link);
}
?>

Espero q t funcione
__________________
Conoce gente nueva, haz amigos, aplicaciones para moviles, juegos online,... Y todo gratis!!! :si: www.cuelate.com
  #9 (permalink)  
Antiguo 21/08/2005, 10:26
 
Fecha de Ingreso: agosto-2005
Mensajes: 65
Antigüedad: 18 años, 8 meses
Puntos: 0
nada Geri. eso ya lo he probado y no funciona...con el reporting_errors en off, no se verian esos errores, xo yo kiero saber dnd esta el fallo, no lo encuentro :S
  #10 (permalink)  
Antiguo 21/08/2005, 22:35
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
La hubicación del fallo te lo dice el mismo error... lìnea 11. Pregunta: ¿cuál es la línea 11? adivinos no somos...

Con el código de Geri obtubiste el mismo error??.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #11 (permalink)  
Antiguo 22/08/2005, 02:08
 
Fecha de Ingreso: agosto-2005
Mensajes: 65
Antigüedad: 18 años, 8 meses
Puntos: 0
la linea 11 es la q veis, ?> la q cierra el codigo :S es extraño. Con el codigo de geri sale igual. He puesto error_reporting(0) en todas las paginas y no se ven los notice, pero ahi esta el asunto

Gracias
  #12 (permalink)  
Antiguo 22/08/2005, 02:24
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
La línea 11 corresponde a ?>?? Eso sí es extraño... ... probemos con:
Código PHP:
<link href="estilos.css" rel="stylesheet" type="text/css">
<?php
function MostrarCategorias($link) {
   
$resultmysql_query("Select * From Categorias Order By ID"$link);
   while(
$rowmysql_fetch_array($result))
   
printf("<tr><td class=\"VinculoCat\"><a href=\"ShowCat.php?id=%d\" class=\"VinculoCat\">%s</a></td></tr>"$row["ID"], $row["Nombre"]);
   
mysql_free_result($result);
}
?>
seguro que esa es la línea 11??... como que algo no concuerda ahí. ¿por qué no muestras desde el inicio de tu archivo?.

__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #13 (permalink)  
Antiguo 22/08/2005, 02:33
 
Fecha de Ingreso: agosto-2005
Mensajes: 65
Antigüedad: 18 años, 8 meses
Puntos: 0
el archivo MostrarCategorias.php es ese, al completo. Y ahora el error esta en la linea 9. yo tampoco entiendo nada

http://www.serperasesoria.com/Dibujo.JPG
Saludos

Última edición por roberJ; 22/08/2005 a las 02:41 Razón: para subir una imagen
  #14 (permalink)  
Antiguo 22/08/2005, 02:39
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Si ese es todo tu archivo entonces haces un include() de tal... entonces muy probablemente en el archivo donde lo incluyes haz de dejar algunas comillas abiertas ó algo por el estilo...

El error no está aquí.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #15 (permalink)  
Antiguo 22/08/2005, 02:41
 
Fecha de Ingreso: agosto-2005
Mensajes: 65
Antigüedad: 18 años, 8 meses
Puntos: 0
jam subi una imagen, observa. probare lo q dices, gracias :)
  #16 (permalink)  
Antiguo 22/08/2005, 02:45
 
Fecha de Ingreso: agosto-2005
Mensajes: 65
Antigüedad: 18 años, 8 meses
Puntos: 0
primero incluyo la conexion:

<?php

include("Conexion.php");
$link=Conectarse();
?>


y depues...incluyo la funcion:

<?php

include("MostrarCategorias.php");
MostrarCategorias($link);

?>

Esto es todo.... en todas lo hago asi, y en todas me pone el notice
  #17 (permalink)  
Antiguo 22/08/2005, 06:43
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Pués en la imágen que dejas se ve que haces más que simplemente eso...

Este tema se ha extendido diciendo lo mismo, el error no está en la función, si quieres que se te ayude aporta los elementos para ello. Ahora se te pediria mostrases el código del archivo donde hace la inclusión...
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #18 (permalink)  
Antiguo 22/08/2005, 07:10
 
Fecha de Ingreso: agosto-2005
Mensajes: 65
Antigüedad: 18 años, 8 meses
Puntos: 0
El codigo es bastante largo, xo bueno, ahi va todo el index.php, aki incluyo varios archivos:

Código PHP:
<?php
session_start
();
error_reporting(0);
?>

<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body background="imagenes/fondo.gif" leftmargin="1" topmargin="1">
<div align="center">
  <table width="770" height="69" border="0" cellpadding="0" cellspacing="0" background="imagenes/rotulo4.gif" class="cabecera">
    <tr> 
      <td width="459" height="78" rowspan="3"><span class="contenido"> </span></td>
      <td height="19" align="center" class="D">B&uacute;squeda </td>
      <td height="19" class="D">&nbsp;</td>
      <td colspan="2" align="center" class="D"><span class="contenido"> 
        <?php

include("Conexion.php");
$link=Conectarse();
?>
        </span> 
  </td>
    </tr>
    <tr> 
      <td height="19" colspan="2" valign="top"> <form style="margin=0px" name="search" onSubmit="return BuscarPalabras(this.string.value);">
          <input name="string" type="text" class="formBus" id="Buscar">
          <input name="Submit" type="submit" class="Lista" value="Ir">
        </form></td>
      <td width="50" height="38" rowspan="2" align="center"> <table width="50" border="0" cellspacing="0" cellpadding="0">
          <tr> 
            <td width="137" height="25" align="center"><a href="foro.php"><img src="imagenes/icono_foro.gif" width="20" height="18" border="0"></a></td>
          </tr>
          <tr> 
            <td align="center" class="Vinculo"><a href="foro.php" class="Vinculo">Foro</a></td>
          </tr>
        </table></td>
      <td width="93" rowspan="2" align="center"><table width="90%" border="0" cellspacing="0" cellpadding="0">
          <tr> 
            <td width="93" height="25" align="center"><a href="usuarios.php"><img src="imagenes/acceso.gif" width="20" height="25" border="0"></a></td>
          </tr>
          <tr> 
            <td align="center" class="Vinculo"><a href="usuarios.php" class="Vinculo" title="Zona de acceso para usuarios registrados" >Acceso 
              Usuarios</a></td>
          </tr>
        </table></td>
    </tr>
    <tr> 
      <td width="124" height="18" align="center" valign="middle" class="VinculoCat"><a href="BuscarAvanzada.php" class="VinculoCat">B&uacute;squeda 
        Avanzada</a></td>
      <td width="40" valign="middle" class="VinculoCat"><a href="BuscarAvanzada.php"><img src="imagenes/lupa.gif" width="18" height="18" border="0"></a></td>
    </tr>
  </table>
  <table width="760" border="0" cellpadding="0" cellspacing="0">
    <tr> 
      <td width="126" height="459" valign="top"> 
        <table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td height="2"><img src="imagenes/transparente.gif" width="3" height="2"></td>
          </tr>
        </table>
        <table width="98%" border="0" cellpadding="2" cellspacing="2">
          <tr> 
            <td height="453" align="center" valign="top" background="imagenes/castilla-leon.gif" class="A"> 
              <table width="100%" border="0" cellspacing="0" cellpadding="0">
                <tr> 
                  <td align="center"> <img src="imagenes/clasificaciones.gif" width="116" height="23"></td>
                </tr>
                <tr> 
                  <td height="8" class="D"><img src="imagenes/transparente.gif" width="3" height="8"></td>
                </tr>
                <tr> 
                  <td height="16"><img src="imagenes/transparente.gif" width="3" height="8"></td>
                </tr>
              </table>
              <table width="100%" height="60" border="0" cellpadding="0" cellspacing="0">
                <tr> 
                  <td height="8" class="D"><img src="imagenes/categorias.gif" width="116" height="23"></td>
                </tr>
                <tr> 
                  <td height="37" align="center"> 
                    <table width="95%" border="0" cellspacing="0" cellpadding="0">
                      <tr> 
                        <td height="18" align="center" class="D"> 
                          <table width="95%" border="0" cellspacing="0" cellpadding="0">
                            <tr> 
                              <td> 
                                <?php
include("MostrarCategorias.php");
MostrarCategorias($link);
?>
                              </td>
                            </tr>
                          </table></td>
                      </tr>
                      <tr> 
                        <td height="19" align="center" class="D">&nbsp;</td>
                      </tr>
                    </table>
                  </td>
                </tr>
              </table>
              <table width="100%" border="0" cellspacing="0" cellpadding="0">
                <tr> 
                  <td height="8" class="D"><img src="imagenes/provincias.gif" width="116" height="23"></td>
                </tr>
                <tr> 
                  <td height="19" align="center"> 
                    <table width="70%" border="0" cellspacing="0" cellpadding="0">
                      <tr> 
                        <td class="D"> 
                          <?php

include("MostrarProvincias.php");
MostrarProvincias($link);

?>
                        </td>
                      </tr>
                    </table>
                  </td>
                </tr>
              </table>
              <br> <table width="100%" border="0" cellspacing="0" cellpadding="0">
                <tr> 
                  <td align="center"><img src="imagenes/clubes.gif" width="116" height="23"></td>
                </tr>
                <tr> 
                  <td height="8" class="D"><img src="imagenes/transparente.gif" width="3" height="8"></td>
                </tr>
                <tr> 
                  <td height="20"><table width="95%" border="0" cellspacing="0" cellpadding="0">
                      <tr> 
                        <td>
                          <?php

include("MostrarEquipos.php");
MostrarEquipos($link);

?>
                        </td>
                      </tr>
                    </table> </td>
                </tr>
                <tr> 
                  <td height="8"><img src="imagenes/transparente.gif" width="3" height="8"></td>
                </tr>
                <tr> 
                  <td class="D">&nbsp;&nbsp;<img src="imagenes/flechaenvivo.gif" width="6" height="8">&nbsp;&nbsp;<a href="SubirEquipo.php" class="VinculoCat"><strong>A&ntilde;adir 
                    Equipo</strong></a></td>
                </tr>
              </table> 
              <br>
              <table width="95%" border="0" cellspacing="0" cellpadding="0">
                <tr> 
                  <td align="center" class="D">
           
                  </td>
                </tr>
              </table> </td>
          </tr>
        </table></td>
      <td width="10" align="center" valign="top"><img src="imagenes/transparente.gif" width="3" height="5"></td>
      <td width="521" align="center" valign="top"> 
        <table width="99%" border="0" cellpadding="2" cellspacing="2" class="cabecera2">
          <tr> 
            <td height="407" align="center" valign="top" class="A">
<table width="95%" border="0" cellspacing="0" cellpadding="0">
                <tr> 
                  <td width="66%" height="14" class="D"><strong><a href="index.php" class="VinculoCat">Sumario</a></strong></td>
                  <td width="34%" align="right" class="D"><?php printf("Bienvenido <b>".$_SESSION["Nombre"]."</b>");
                  if (
$_SESSION["Usuario"]=="SI"//Compruebo si existe una sesion abierta x un usuario
                

    
//si existe, muestro la opcion de Cerrar Sesion 
    
echo "<br><a class=VinculoCat href=Salir.php>Cerrar Sesion</a>"; } ?></td>
                </tr>
              </table>
              <table width="95%" border="0" cellspacing="0" cellpadding="0">
                <tr> 
                  <td> 
                    <?php

include("MostrarSumario.php");
MostrarSumario($link);

?>
                  </td>
                </tr>
              </table>
              <table width="500" border="0" cellspacing="0" cellpadding="0">
                <tr> 
                  <td width="500"><img src="imagenes/linea.gif" width="500" height="2"> </td>
                </tr>
                <tr>
                  <td>
                    <?php

include("MostrarTitulares.php");
MostrarTitulares($link);

?>
                  </td>
                </tr>
              </table>
              <p>&nbsp; </p></td>
          </tr>
        </table>
        <br>
      </td>
      <td width="103" align="center" valign="top"><table width="91%" border="0" cellspacing="2" cellpadding="2">
          <tr> 
            <td height="66" align="center" valign="top"><img src="imagenes/destacadas.gif" width="116" height="23">
              <table width="90%" border="0" cellspacing="0" cellpadding="0">
                <tr> 
                  <td align="center"> 
                    <?php

include("MostrarDestacadas.php");
MostrarDestacadas($link);

?>
                  </td>
                </tr>
              </table></td>
          </tr>
        </table>
        <table width="91%" border="0" cellspacing="2" cellpadding="2">
          <tr> 
            <td height="49" align="center" valign="top"><img src="imagenes/federaciones.gif" width="116" height="23"> 
              <table width="70%" border="0" cellspacing="0" cellpadding="0">
                <tr> 
                  <td align="center"> 
                  </td>
                </tr>
              </table></td>
          </tr>
        </table> </td>
    </tr>
  </table>
</div>
</body>
</html>
  #19 (permalink)  
Antiguo 22/08/2005, 07:27
 
Fecha de Ingreso: enero-2005
Mensajes: 4
Antigüedad: 19 años, 3 meses
Puntos: 0
Mi interpretacion

HOla amigos, es la primera vez que escribo y soy nuevo en PHP, pero el error no estara en que falta la llave de apertura de la sentencia WHILE ? el primer codigo que pasaron es asi:

while($row= mysql_fetch_array($result))
printf("<tr><td class=\"VinculoCat\"><a href=\"ShowCat.php?id=%d\" class=\"VinculoCat\">%s</a></td></tr>", $row["ID"], $row["Nombre"]);
mysql_free_result($result);
}

FIjense que que falta la llave al comienzo de la sentencia...

Saludos y espero que no me manten, soy nuevo...
jajajajja
Abrazos....
Sergio
  #20 (permalink)  
Antiguo 22/08/2005, 07:45
 
Fecha de Ingreso: agosto-2005
Mensajes: 65
Antigüedad: 18 años, 8 meses
Puntos: 0
gracias x la intencion sergio, pero esa llave es la q cierra la funcion.
el while no lleva ninguna llave xq solo tiene una linea

Gracias :D
  #21 (permalink)  
Antiguo 22/08/2005, 08:16
 
Fecha de Ingreso: enero-2005
Mensajes: 4
Antigüedad: 19 años, 3 meses
Puntos: 0
pero perdon asi de paso aprendo...si no pones la llave de apertura igualmente tenes que poner la llave de cierre ? Eso no genera que el interprete de php quede "desparejo" en cuanto a llaves?

Bueno un abrazo...y la intencion la tuve.
Gracias.
Sergio
  #22 (permalink)  
Antiguo 22/08/2005, 08:47
 
Fecha de Ingreso: agosto-2005
Mensajes: 143
Antigüedad: 18 años, 8 meses
Puntos: 0
Holas.

Cita:
Iniciado por sergou
pero perdon asi de paso aprendo...si no pones la llave de apertura igualmente tenes que poner la llave de cierre ? Eso no genera que el interprete de php quede "desparejo" en cuanto a llaves?

Bueno un abrazo...y la intencion la tuve.
Gracias.
Sergio
No. Solo tienes que cerrar las llaves que abras.

Esa llave, como han dicho, cierra el bloque de la funciónn no cierra while().
Código:
while (expresion) sentencia
Esta es la foma correcta. Pero cuando la sentencia ocupa más de una linea de código se encierra entre llaves y se forma un bloque que actua como una sentencia sola.

Saludos ;)
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 07:19.