Foros del Web » Programando para Internet » PHP »

problemas con guiones en variables...

Estas en el tema de problemas con guiones en variables... en el foro de PHP en Foros del Web. Hola foro!!! tengo un sistema para subir fotos.. los menúses se crean de forma automática, se autorrellenan las tablas con las imágenes de los directorios... ...
  #1 (permalink)  
Antiguo 14/07/2005, 01:44
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
problemas con guiones en variables...

Hola foro!!! tengo un sistema para subir fotos.. los menúses se crean de forma automática, se autorrellenan las tablas con las imágenes de los directorios... y he encontrtado un pequeño bug... ya que al poner un "-" en el nombre de la tabla... por ejemplo "fds-1" al usar esa cadena como nombre de variable en PHP me da un error...

Diréis.. pues no uses ese nombre... pero es que el nombre de la tabla se genera con las primeras letras del título del menú que se haya creado... por ejemplo "Fotos de Sergio - 1"... y el guión bajo.. como que no lo quiero usar... no se puede llamar una variable en PHP $fds-1???

No se si me he explicado bien... pero a ver si me podéis echar una mano...
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #2 (permalink)  
Antiguo 14/07/2005, 02:09
cartucho
Invitado
 
Mensajes: n/a
Puntos:
pues seguramente no se puede utilizar el guion, al igual que tampoco se pueden usar las palabras reservadas ni se puede empezar el nombre de la variable con un número...

mira la documentación sobre variables

saludos
  #3 (permalink)  
Antiguo 14/07/2005, 02:26
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
gracias cartucho.. le echaré un vistazo a ver si encuentro algún modo de puentear el código
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #4 (permalink)  
Antiguo 14/07/2005, 02:30
cartucho
Invitado
 
Mensajes: n/a
Puntos:
por curiosidad...y por qué no quieres utilizar el guión bajo?
  #5 (permalink)  
Antiguo 14/07/2005, 06:13
Avatar de dopon  
Fecha de Ingreso: julio-2005
Ubicación: Cucuta / Colombia
Mensajes: 493
Antigüedad: 18 años, 9 meses
Puntos: 1
me iamgino que lo dea usar tanto como contenido a mostrar y como nombre de variable y se veria feo fotos de sergio_1

Lo que veo que puedes hacer antes de asignarla como nombre de variable y luego de ser impresa es intercambiar el - por un _

si pones una parte del codigo creo que me aseguraria si entendi bien lo ke dijistes
  #6 (permalink)  
Antiguo 15/07/2005, 01:33
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
gracias por la ayuda

el error da en esta línea:
$name_campo=mysql_field_name($sql_query,$i);

por lo que supongo que viene de la variable de $sql_query en:
$sql="SELECT * FROM $tabla ORDER BY `id` DESC LIMIT 1";
$sql_query = mysql_query ($sql);


$tabla es la variable que contiene "fds-1"...

gracias d enuevo y saludos!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #7 (permalink)  
Antiguo 15/07/2005, 01:41
Avatar de DINASEN  
Fecha de Ingreso: marzo-2003
Mensajes: 997
Antigüedad: 21 años, 1 mes
Puntos: 1
imaguino que 'id' es una variable, pero estas poniendo texto
prueba asi

$sql="SELECT * FROM $tabla ORDER BY ".$id." DESC LIMIT 1";


Un Saludo
  #8 (permalink)  
Antiguo 15/07/2005, 01:47
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
mmmmmmm pero es que `id` es el nombre del campo de la $tabla... no es una variable...
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #9 (permalink)  
Antiguo 15/07/2005, 02:25
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Si es el nombre de un campo de la tabla no debería ir entrecomillado

$sql="SELECT * FROM $tabla ORDER BY id DESC LIMIT 1";
  #10 (permalink)  
Antiguo 15/07/2005, 02:49
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
mmmmmmmmmm si son nombres de tablas o campos la comilla deben ser `` si son datos ' ' ... no es obligatorio ponerlas... pero ayuda a comprender el código... de todas formas lo he probado y nada... yo creo que el problema viene por el nombre de la tabla que tiene un guión...
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #11 (permalink)  
Antiguo 15/07/2005, 03:15
Avatar de DINASEN  
Fecha de Ingreso: marzo-2003
Mensajes: 997
Antigüedad: 21 años, 1 mes
Puntos: 1
pero que error sql te da?¿

y no es necesario poner el campo entre ` `


Un Saludo
  #12 (permalink)  
Antiguo 15/07/2005, 03:25
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
este es el error...

Warning: mysql_field_name(): supplied argument is not a valid MySQL result resource in C:\Apache\Apache2\htdocs\fiesta-amigos\admin\accion_tb.php on line 132
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #13 (permalink)  
Antiguo 20/07/2005, 07:00
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
en fin... de lamanera más tonta... al colocar las comillas en el nombre de la tabla `$tabla` ya no me da el error...

gracias a todos!!!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
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 22:15.