Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] que método usaría vos?

Estas en el tema de que método usaría vos? en el foro de PHP en Foros del Web. Quiero realizar una consulta, estoy actualizando una página vieja HTML donde tengo que transformar los links y no se bien cuál sería el método más ...
  #1 (permalink)  
Antiguo 27/08/2015, 18:25
 
Fecha de Ingreso: octubre-2005
Mensajes: 40
Antigüedad: 14 años, 3 meses
Puntos: 0
Pregunta que método usaría vos?

Quiero realizar una consulta, estoy actualizando una página vieja HTML donde tengo que transformar los links y no se bien cuál sería el método más sencillo para realizarlo, si con PHP o JavaScript o SQL, lo que tengo que hacer el leer una parte del href y luego generar uno nuevo.

Probé con preg_remplace o leer el link href con JavaScript pero no soy experto y no logro hacerlo.

Tengo que tomar este link

Código:
<a href="../../../informes/01%20Archivos/Info%20N%200178%20(Finalizado).html">178/84</a>
Leer desde Info%20N%20 hasta el próximo %20 y poder generar este link

Código:
<a href="ver.php?n=0178">178/84</a>
No pido que se pongan a trabajar por mí, solo que me orienten cual sería el mejor método para hacerlo u otro lenguaje u otra manera que se le ocurra.

¿Cómo lo harian Uds?


Desde ya gracias antemano!!!
  #2 (permalink)  
Antiguo 27/08/2015, 18:55
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 11 años, 9 meses
Puntos: 2534
Respuesta: que método usaría vos?

En cualquier lenguaje se puede hacer, así que ¿por qué no lo intentas?

PDTA: SQL no es un lenguaje de programación así que no aplica.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 28/08/2015, 07:28
 
Fecha de Ingreso: octubre-2005
Mensajes: 40
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: que método usaría vos?

Hola pateketrueke gracias por responder... mi problema no es que no se pueda hacer, es que yo no me doy cuenta como hacerlo... como explique intente hacerlo con JavaScript y con PHP pero no me sale por mi falta de experiencia... por eso me gustaría saber si me pueden dar una mano diciendo como lo harían y yo intento hacerlo.

Gracias pateketrueke por atender el post!


PD: se que SQL no es un lenguaje... pero como tomo el contenido html de un campo, sql tiene buenos filtros para sustituir cadenas.
  #4 (permalink)  
Antiguo 28/08/2015, 08:54
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 11 años, 9 meses
Puntos: 2534
Respuesta: que método usaría vos?

Oh ya, entiendo.

Entonces yo usaría una expresión regular:

Código PHP:
Ver original
  1. $regex = '|href="[^"]+/Info%20N%20(\d+)%20[^"]+"|';
  2. $html = '<a href="http://www.forosdelweb.com/../informes/01%20Archivos/Info%20N%200178%20(Finalizado).html">178/84</a>';
  3.  
  4. var_dump(preg_replace($regex, 'href="ver.php?n=\1"', $html));
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 28/08/2015, 09:49
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 7 años, 8 meses
Puntos: 319
Respuesta: que método usaría vos?

O quizas:
Código PHP:
Ver original
  1. $html = '<a href="http://www.forosdelweb.com/../informes/01%20Archivos/Info%20N%200178%20(Finalizado).html">178/84</a>';
  2.  
  3. $html = str_ireplace(['href="../../../informes/01%20Archivos/Info%20N%20', '%20(Finalizado).html">'], ['href="ver.php?n=','">'], $html);
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios
  #6 (permalink)  
Antiguo 31/08/2015, 18:03
 
Fecha de Ingreso: octubre-2005
Mensajes: 40
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: que método usaría vos?

Muchas gracias por responder NSD... yo tenia hecho algo asi, el unico problema es que antes de /Info%20N%20 cambia el directorio, entonces eso solo me cambia los links de ese directorio.

El que me sirvio muchisimo y intente hacerlo con expresiones regulares antes, pero no tenia el conocimiento que tiene pateketrueke y la practica que tiene para usarlas!! Muchísimas gracias pateketrueke ese es el rumbo... realmente gracias por ayudar.

Me surgio un solo inconveniente... los links que tiene el caracter menos - no me funciona
Ejemplo si funciona:
Código HTML:
Ver original
  1. <a href="http://www.forosdelweb.com/../informes/01%20Archivos/Info%20N%200178%20(Finalizado).html">178/84</a>
No funciona
Código HTML:
Ver original
  1. <a href="http://www.forosdelweb.com/../informes/01%20Archivos/Info%20N%200178-84%20(Finalizado).html">178/84</a>

Sabes como puedo corregirlo? perdón por molestar de vuelta.
  #7 (permalink)  
Antiguo 31/08/2015, 18:10
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 11 años, 9 meses
Puntos: 2534
Respuesta: que método usaría vos?

Cambia la parte de la expresión de \d+ a [\d-]+ para que acepte también los guiones.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 31/08/2015, 19:14
 
Fecha de Ingreso: octubre-2005
Mensajes: 40
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: que método usaría vos?

Muchas gracias... como me gustaría aprender bien lo de las expresiones regulares, ya lei un poco pero no llego a entender todo o que hiciste... debe ser practica.


Muchas gracias SOLUCIONADO!

Etiquetas: html, 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 16:26.