Foros del Web » Programando para Internet » PHP »

@ vs. errores

Estas en el tema de @ vs. errores en el foro de PHP en Foros del Web. Wazzaap! compaz tengo un problemilla bueno un error que antes eran 3 errores que me mostraba el php, esos errores no importan es algo insignificante ...
  #1 (permalink)  
Antiguo 26/11/2008, 09:43
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
@ vs. errores

Wazzaap!

compaz tengo un problemilla bueno un error que antes eran 3 errores que me mostraba el php, esos errores no importan es algo insignificante peeeeeeeeero los muestra, ya puse el "@" antes de cada linea para que no me muestre el error peeeeeeeero no se como colocar un @ antes de un while, si lo coloco me genera error. como hago en ese caso?
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #2 (permalink)  
Antiguo 26/11/2008, 09:47
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: @ vs. errores

Solo agrega:

Código PHP:
error_reporting(0); 
Al principio de tu archivo PHP.
  #3 (permalink)  
Antiguo 26/11/2008, 10:09
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: @ vs. errores

mmm.....

muy mala idea... pero bueno, suerte! (eso... mucha suerte)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 26/11/2008, 10:53
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 20 años
Puntos: 34
Respuesta: @ vs. errores

Estoy casi de acuerdo con pateketrueke. La idea es solucionar el error, no ocultarlo!!!...
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #5 (permalink)  
Antiguo 26/11/2008, 11:32
Avatar de danielrivas  
Fecha de Ingreso: noviembre-2007
Ubicación: Preprocessing
Mensajes: 275
Antigüedad: 17 años
Puntos: 6
Respuesta: @ vs. errores

Yo también pienso lo mismo... "@" se debe utilizar para que el usuario no vea un error, pero si lo has detectado, es aconsejable que lo soluciones...

Los errores no suelen ser insignificantes, y menos si tienes 3...
  #6 (permalink)  
Antiguo 26/11/2008, 12:15
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 20 años
Puntos: 34
Respuesta: @ vs. errores

Cita:
se debe utilizar para que el usuario no vea un error
No estoy de acuerdo. Un @ no debería usarse jamás, si lo estás poniendo es porque sabes que hay un error o es posible que ahí lo haya...es como el huevo y la gallina.

Si lo pones en todo caso es porque sabes del error pero no sabes solucionarlo o la solución no se adapta a tu sistema (casos muy raros si los hay)
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #7 (permalink)  
Antiguo 26/11/2008, 12:45
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 22 años
Puntos: 17
Respuesta: @ vs. errores

Yo no veo problema a usar @ siempre y cuando trates el error después. Es decir, puedes tener un try y catch para caputar excepciones. O puedes poner @ delante de una instrucción que sabes que puede fallar por causas ajenas y luego comprobar si ha habido error y tratarlo en consecuencia.
  #8 (permalink)  
Antiguo 26/11/2008, 14:02
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 20 años
Puntos: 34
Respuesta: @ vs. errores

Si, podés analizarlo luego si error_reporting esta seteado adecuadamente al igual que track_errors y si estás evaluando una expresión.

De todas maneras en el 98% de los casos me parece que hay mejores maneras de tratar los errores (a no ser que esté abirendo un socket con un warning o algo así), de hecho, usar excepciones como bien decís es una de las mejores opciones.

Como sea, lo que si sé es que lobo_php debería mostrarnos el código donde tiene el error, puede ser que esté usando bien el @, o puede que no.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #9 (permalink)  
Antiguo 26/11/2008, 14:13
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 22 años
Puntos: 17
Respuesta: @ vs. errores

Sí, eso es cierto, en la mayoría de los casos hay formas mejores de tratar los posibles errores.... y sin ver la situación en cuestión sólo se puede teorizar...
  #10 (permalink)  
Antiguo 26/11/2008, 14:21
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 20 años
Puntos: 34
Respuesta: @ vs. errores

Así es, de hecho saltamos todos a decir que los @ no son correctos, cuando tal vez si estén bien aplicados...maldita falta de información :P
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #11 (permalink)  
Antiguo 28/11/2008, 12:55
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: @ vs. errores

bueno no encuentro el script donde tengo los @ se que esta mal pero ahora estoi ocupado en otras cosas como para buscarlo. ya lo soluciones solo es en una consulta a veces salia mal y a veces bien pero no alteraba para nada la funcionalidad de la aplicacion, simplemente era falta de informacion en mi sistema y como lo estaba usando era asi:
@$variable=cualquier cosa que genere error
por eso no hay problema, me funciona, peeeeeeeeeero
cuando hacia esto:
while(odbc_fetch_array($rs)){
ahi si me salia el error y no sabia como ocultarlo sabiendo que si ponia el @ me salia un error mas grande y se ve feo xD pero igual ya esta solucionado gracias a las validaciones..

claro que me gustaria tener CLARO eso del @ en los while, for o if
tambien funcionan o tiene que ser con otro simbolo???
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #12 (permalink)  
Antiguo 28/11/2008, 15:00
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 20 años
Puntos: 34
Respuesta: @ vs. errores

Funcionan con cualquier expresión
__________________
Mi punto de partida es Que Bueno Lo Nuevo
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 12:10.