Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/01/2008, 20:24
JohnDF
 
Fecha de Ingreso: enero-2006
Mensajes: 5
Antigüedad: 18 años, 3 meses
Puntos: 0
Error _BIZARRO_ con string

Buenas gente:

Por aca con un error bastante extraño y simple con un string.

El problema es al asignar una cadena a una variable dentro de una funcion.

El texto esta formateado asi por claridad en el post

function mi_funcion ($in_where, $in_orderby, $in_limit) {

$query = "SELECT
products.products_id,
products.products_quantity,
products.products_model,
products.products_image,
products.products_date_added,
products.products_price,
products.products_status,
products.manufacturers_id,
products.products_ordered,
products_description.language_id,
products_description.products_name,
products_description.products_description,
products_description.products_url,
products_description.products_viewed,
manufacturers.manufacturers_name,
manufacturers.manufacturers_image,
manufacturers.date_added,
manufacturers.last_modified

FROM products

INNER JOIN
products_description ON products.products_id =
products_description.products_id
INNER JOIN
products_to_categories ON products.products_id =
products_to_categories.products_id
INNER JOIN
manufacturers ON products.manufacturers_id =
manufacturers.manufacturers_id

WHERE products_description.language_id = 3 $in_where

ORDER BY $in_orderby

LIMIT $in_limit;";


return $query;
}

El asunto es que corta el string donde dice "...INNER JOIN products_description ON products.products_id =", no importa como lo haga, con dobles comillas, con simples, como HEREDOC, siempre lo corta en el mismo lugar.

Probe:
Concatenar las variables que paso a la funcion en lugar de escribirlas dentro de la cadena
Seccionar el string en varias variables y luego unirlas en uno final
Abrirlo el archivo con otro editor por si era un problema de Eclipse
Escribir toda la cadena en una sola linea
Escribir la cadena con un formato parecido al que esta arriba, y creo que no me quedo nada por probar.

Lo peor es que cuando probe asignar una clausula sql a cada variable y luego unirlas, al evaluar la expresion en el debugger, evaluaba la cadena correctamente, pero en la variable quedaba el string cortado.

Me quede en blanco, no se que hacer.

Uso Eclipse + PDT + PHP 5.2.3

De mas esta decir que cualquier ayuda es mas que bienvenida.