Foros del Web » Programando para Internet » PHP »

No me muestra todo el contenido

Estas en el tema de No me muestra todo el contenido en el foro de PHP en Foros del Web. Cordial saludo. Trabajo con Sql Server en un campo de tipo varchar longitud 5000 guardo el contenido de una carta ej: Con el propósito de ...
  #1 (permalink)  
Antiguo 25/08/2005, 09:04
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 2 meses
Puntos: 2
Pregunta No me muestra todo el contenido

Cordial saludo.

Trabajo con Sql Server en un campo de tipo varchar longitud 5000 guardo el contenido de una carta ej:

Con el propósito de estructurar un sistema de información estadístico confiable, ágil y oportuno y despúes de evaluar y analizar la información reportada actualmente por las Cajas de superintendencias educativas, esta Superintendencia ha realizado variaciones en la cantidad de los cuadros establecidos en el Manual de Especificaciones Técnicas, permaneciendo vigentes las fechas de entrega de dicha información.

De otra parte, para las cifras del 2004 y siguientes, se van a diligenciar los formatos establecidos en la presente Circular. La respuesta enviada para el año 2004 debe coincidir con el acumulado existente en esta Entidad y ser producto de los consolidados de los informes trimestrales.

De esta forma, se suspenden los Cuadros del Manual de especificaciones Técnicas anual: 5. Subsidio en Especie; 7. Programas en Salud con manejo de infraestructura; 8. Programas en Salud Ocupacional, Adulto Mayor y Discapacitados; 9. Actividades en Salud sin manejo de infraestuctura; 10. Programas de Nutrición; 11. Cobertura en Educación Formal; 12. Cobertura en Educación No formal e Informal; 13. Guarderías; 18. Crédito de Fomento para industrias Familiares; 19. Crédito en Servicios Sociales; 21. Cobertura en Recreación y Turismo Social; 22. Servicio de Biblioteca; 23. Atención integral a la Niñez con recursos Foniñez; 24. Jornada Escolar Complementaria con recursos Foniñez;26. Fondo para el Fomento al Empleo y Protección del Desempleo (Se tomarán cifras enviadas a la División Operativa); 27. Capacitación para Reinserción Laboral y 28. Microcrédito (Se tomarán cifras enviadas a la División Operativa)

Lo guardo asi como lo muetro, con Enter y todo..
Cuando hago el select y muestro el dato con echo o print solo me pinta:

Con el propósito de estructurar un sistema de información estadístico confiable, ágil y oportuno y despúes de evaluar y analizar la información reportada actualmente por las Cajas de Compensación Familiar, esta Superintendencia ha realizado variaciones en

Pero el resto de datos no....

Alguien me puede ayudar????

Agradezco la ayuda y sugerencias que me puedan brindar.
  #2 (permalink)  
Antiguo 25/08/2005, 09:17
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
Yo tuve un problema similar usando odbc.
Fijate que te imprime exactamente 256 caracteres. Te recomiendo que veas el phpinfo() y te fijes si tiene un limite a la conexion con sql server, y en caso de que lo tenga ver si podés modificarlo con ini_set (la lista está en http://ar.php.net/manual/es/ini.php#ini.list ) o desde el php.ini

Espero poder haber ayudado
  #3 (permalink)  
Antiguo 25/08/2005, 09:17
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Los campos varchar, en "todos" los rdbms, a pesar de que te permitan escribir cualquier numero sólo aceptan 255 caracteres, aunque creo que no es un problema propio del tipo de dato, sino de la configuracion de rdbms. Deberás usar otro tipo de dato, text, ntext o algo por el estilo.
  #4 (permalink)  
Antiguo 25/08/2005, 09:59
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 2 meses
Puntos: 2
No funciona

Saludos, modifique el tipo de datos a Char pero no guarda los Enter; pasa el texto lineal y eso no me sirve

Modifique el php.ini las opciones
mssql.textlimit y mssql.textsize a 5000
o uno de los dos y nada; con Char me muestra todo seguido y con Varchar hasta 256

Que otra cosa puede ser??
  #5 (permalink)  
Antiguo 25/08/2005, 12:20
 
Fecha de Ingreso: junio-2002
Mensajes: 243
Antigüedad: 21 años, 10 meses
Puntos: 1
Pues como ya te comentan cambia el tipo de datos a text.

Salu2.
  #6 (permalink)  
Antiguo 25/08/2005, 13:13
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 2 meses
Puntos: 2
Text o nText no acepta Enter

Ese tipo de datos no me sirve por la razón de que se genera una carta y en la carta uno puede escribir varios parrafos con Enter......; ese tipo de datos no acepta Enter
  #7 (permalink)  
Antiguo 25/08/2005, 15:52
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
¿Volviste a guardar el texto después de cambiar el php.ini ? Porque quizás sólo te subió esos caracteres.

¿Podés acceder por otro medio a la base de datos y ver si funciona correctamente para más caracteres? De esta forma determinarías si es un error de PHP o de la base de datos
  #8 (permalink)  
Antiguo 25/08/2005, 16:18
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 2 meses
Puntos: 2
Es error del php

Saludos.

Borre los datos que tenia anteriormente y
Despues de hacer lo del php.ini lo siguiente:

; Valid range 0 - 2147483647. Default = 4096.
mssql.textlimit = 2147482000

; Valid range 0 - 2147483647. Default = 4096.
mssql.textsize = 2147482000

reinicie la maquina y guarde de nuevo, y al volver a generar el documento sigue mostrando los 256 caracteres...

Alguna otra sugerencia?????
  #9 (permalink)  
Antiguo 25/08/2005, 16:32
 
Fecha de Ingreso: junio-2002
Mensajes: 243
Antigüedad: 21 años, 10 meses
Puntos: 1
Puedes mirar de substituir los enter por <br>.

Otra opción es guardarlo como binario..parecido a como se guardan imagenes..pero guardando un fichero de texto pero no lo he hecho nunca...

y por cierto...q haces para ver el texto? pq quizás este ahi el quit de la custión...osease q te guarde los enters pero q lo muestres e tal modo q no te haga los enters..
  #10 (permalink)  
Antiguo 25/08/2005, 17:38
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 2 meses
Puntos: 2
Con funciones de impresion por pantalla

Lo intente con echo, print, printf.....etc

El problema es que en la BD lo guarda todo pero a la hora de mostrar ese dato solo muestra 256 caracteres..
  #11 (permalink)  
Antiguo 26/08/2005, 06:46
 
Fecha de Ingreso: junio-2002
Mensajes: 243
Antigüedad: 21 años, 10 meses
Puntos: 1
Me referia al tipo texto...

solo podrás almacenar texto de más de 256 con el tipo texto y sus varaintes...olvidate del varchar pq solo es hasta 255..por mucho q le digas q guarde más.

A er acabo de crear uan tabla de pruba con el campo tipo text y guarda perfectamente los retonros de carro..el problema está en q si utilizas ehco o print tal cual...el navegador se la suda y no interpreta los saltos...

si pruebas a irmprimirlo en un campo textarea verás como si pone los saltos...

si queires q te salgan los saltos...con un echo en una tabla pro ejemplo pues puedes provar a sustituir los retornos de carro por <br> al recueprar el texto de la base de datos.

Código PHP:
echo ereg_replace("\r",'<br>',$row["texto"]); 
Espero q te haya quedado un poco más claro.

Salu2.

Última edición por lotusxxl; 26/08/2005 a las 07:27
  #12 (permalink)  
Antiguo 26/08/2005, 08:24
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 2 meses
Puntos: 2
Muchas gracias a todos

Saludos....

lotusxxl, me funciono, por fin me quite un dolor de cabeza de encima, gracias a todos los que me colaboraron
  #13 (permalink)  
Antiguo 26/08/2005, 08:33
 
Fecha de Ingreso: junio-2002
Mensajes: 243
Antigüedad: 21 años, 10 meses
Puntos: 1
También puedes hacer lo siguiente...

Código PHP:
echo "<pre>".$row["texto"]."</pre>"
con esto puedes ponerle texto preformateado sin problemas.

Salu2.

Última edición por lotusxxl; 26/08/2005 a las 13:10
  #14 (permalink)  
Antiguo 26/08/2005, 10:23
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 2 meses
Puntos: 2
gracias

Gracias lotusxxl pero con <pre> me queda horrendo, el tipo de dato y todo pegado me sirve mucho mejor con

echo ereg_replace("\r",'<br>',$row["texto"]);

Gracias...
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 15:45.