Foros del Web » Programando para Internet » PHP »

goto en PHP

Estas en el tema de goto en PHP en el foro de PHP en Foros del Web. Buenos dias, estoy tratando de aplicar algo parecido al goto en php, quiero lograr que en caso de un error de mysql salte hacia 20 ...
  #1 (permalink)  
Antiguo 01/02/2013, 09:17
 
Fecha de Ingreso: septiembre-2012
Mensajes: 32
Antigüedad: 11 años, 7 meses
Puntos: 0
goto en PHP

Buenos dias, estoy tratando de aplicar algo parecido al goto en php, quiero lograr que en caso de un error de mysql salte hacia 20 lineas de codigo adelante, se puede en php eso?

Código PHP:
// Realizo la consulta SQL
$sql="select * from $impr";
$resultmysql_query($sql) or die(mysql_error()); 
quiero reemplazar or die(mysql_error()); por el salto de linea

espero que ya no este tratado este tema ya que mire un poco y no encontre, saludos y gracias !!
  #2 (permalink)  
Antiguo 01/02/2013, 09:26
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 12 años, 11 meses
Puntos: 76
Respuesta: goto en PHP

hola

mmmm seguro buscaste ?

http://php.net/manual/es/control-structures.goto.php
  #3 (permalink)  
Antiguo 01/02/2013, 09:47
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: goto en PHP

  #4 (permalink)  
Antiguo 01/02/2013, 11:05
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 12 años, 9 meses
Puntos: 181
Respuesta: goto en PHP

Hola, no entiendo tu problema muy bien. A modo de comentario la ultima vez que utilice una instrucción goto fue cuando aprendi qbasic y tenia como unos 10 o 12 años. No te recomiendo usar esa instrucción mas que nada porque la programación debe poder hacer frente a diversos escenarios sin necesidad de tener que saltar codigo.

Tal y como muestra en la caricatura gatorv deberias pensar en reestructurar el flujo del codigo antes de pensar en un goto.

Si nos mostraras cuales son esas veinte lineas que te quieres saltar y porque de pronto es mas facil en pensar una alternativa diferente.
__________________
Blog de humor http://elcuasatar.net63.net/
  #5 (permalink)  
Antiguo 01/02/2013, 13:44
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: goto en PHP

Podrías crear una función para el mensaje de error, así, en lugar de goto, pones or error('mensaje de error');

Esa misma función te servirá para propósitos generales y no sólo para esa consulta y puedes aplicar HTML y estilos personalizados, de acuerdo a tus necesidades.
__________________
- León, Guanajuato
- GV-Foto
  #6 (permalink)  
Antiguo 04/02/2013, 08:31
 
Fecha de Ingreso: septiembre-2012
Mensajes: 32
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: goto en PHP

Al hacer lo siguiente me da este error: Parse error: syntax error, unexpected T_GOTO in C:\wamp\www\INDICEGRALl.PHP on line 1632


Código PHP:
Ver original
  1. /* Realizamos la consulta SQL */
  2. $sql="select * from $impr";
  3. $result= mysql_query($sql) or goto endruti;
  4.  
  5. codigo
  6. codigo
  7.  
  8. endruti:
  9. codigo codigo

el porque de no dejar el mensaje de error es porque terminaria ahi .. y necesito que siga leyendo por mas que no encuentre esa tabla, eso podria ser posible ya que puede ser eliminada desde la aplicacion, se trata de un stock para ser mas preciso
desde ya gracias por tu respuesta, saludos!

Última edición por MAXI279; 04/02/2013 a las 08:35 Razón: agregar info
  #7 (permalink)  
Antiguo 04/02/2013, 09:02
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: goto en PHP

También puedes manejar los errores sin tener que recurrir a eso:
Código PHP:
if (mysql_query($sql)) {
  
// acá procesamos todo 
}

// demás código 
Así que no hace falta el goto/die de ningún modo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: mysql, select, sql
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 19:06.