Filtrar algunos dominios de un Query.

Inicio Foros WordPress Programación Filtrar algunos dominios de un Query.

Etiquetado: ,

Este debate contiene 8 respuestas, tiene 3 mensajes y lo actualizó  imported_j.conti hace 8 años, 1 mes.

  • Autor
    Publicaciones
  • #18919

    imported_j.conti
    Participante

    <p>Tengo un problema con un query.</p>
    <p>Al realizar este query me devuelve los dominios spam de la base de datos:</p>
    <p>

    </p>
    <p>El problema que tengo es que me devuelve todos los dominios y quiero filtrar gmail.com, Yahoo.com y telefonica.net</p>
    <p>¿Alguien sabe como se podría hacer?</p>
    <p>Gracias.
    </p>

  • #45966

    davidlluna
    Participante

    Buenas, si lo quieres filtrar en la parte de php, es sencillo:

    if(!ereg(‘gmail.com|yahoo.com|telefonica.net’,$row[‘user_email])) $email = $row[‘user_email];

    La expresión regular la puedes complicar todo lo que quieras para afinar el filtro

    Saludos

  • #45968

    imported_j.conti
    Participante

    Muchas gracias Lluna,

    Sí, es para php. Luego lo implemento y seguro que funciona 🙂

    Llevaba horas buscando por internet.

    Muchísimas gracias de nuevo.

    Salu2

  • #45970

    imported_j.conti
    Participante

    Hecho,

    Va de fábula 🙂

    http://buddypress-es.org/sploggers/

    Muchas gracias de nuevo

  • #46030

    metacortex
    Participante

    Sólo avisar que cuando montes el script en un servidor PHP actualizado te va a dar error. La función [url=http://php.net/manual/es/function.ereg.php]ereg()[/url] está obsoleta desde hace mucho, mucho tiempo. Reemplázala por [url=http://php.net/manual/es/function.preg-match.php]preg_match()[/url] y serás feliz.

  • #46033

    davidlluna
    Participante

    Sólo avisar que cuando montes el script en un servidor PHP actualizado te va a dar error. La función [url=http://php.net/manual/es/function.ereg.php]ereg()[/url] está obsoleta desde hace mucho, mucho tiempo. Reemplázala por [url=http://php.net/manual/es/function.preg-match.php]preg_match()[/url] y serás feliz.

    Vaya tela 🙂 No tenía ni idea, hace mucho que no miro el manual en línea de PHP, ufff me va a tocar revisar muchas cosas, jejeje Gracias Metacortex por el aviso

    Saludos!

  • #46042

    imported_j.conti
    Participante

    El php es 5.2.9

    Muy antiguo que digamos no es.

    Aun no he querido actualizar a la 5.3.x ya que cada vez que lo hago hay problemas con algún script y tengo que realizar un downgrade.

    Lluna, ¿Te llegó el PM que te envié?

    Salu2

  • #46045

    metacortex
    Participante

    José, por eso dejé el enlace a ambas funciones, incluyendo ereg():

    http://php.net/manual/es/function.ereg.php

    Ahí se lee:

    “Esta función ha sido declarada OBSOLETA desde PHP 5.3.0. Su uso está totalmente desaconsejado”.

    En realidad la función es obsoleta desde PHP 5.0. Sólo que se mantenía un legacy hasta la 5.2.X, lo cual ya no vale en la 5.3.X.

    Con preg_replace() logras exactamente lo mismo sin los grandes inconvenientes que presentaba ereg(), con la diferencia de que debes usar delimitadores.

    Aun no he querido actualizar a la 5.3.x ya que cada vez que lo hago hay problemas con algún script y tengo que realizar un [b]downgrade[/b].

    Disculpa la observación, pero la única razón posible por la cual debas hacer tal cosa es que programes con código de PHP 3.0 puro y duro; de otra forma no entiendo cómo se puede proceder con tamaña acción. En realidad los errores tipo ‘deprecated’ son muy contados. Sólo hay que adaptarse un poquito a los recursos actuales.

  • #46071

    imported_j.conti
    Participante

    Gracias por la info.

    Pero por ejemplo, OpenX en su última versión, no rula sobre php 5.3.3, saltan errores 500 en varias partes. Quizás con 5.3.2 funcione, no lo sé, pero preferí hacer el downgrade a 5.2.9 que todo suele funcionar sin problemas.

    En cualquier caso, se agradece toda la info ya que si realizo un upgrade de php ya se donde arreglar el problema que me surgirá.

    Saludos

El foro ‘Programación’ está cerrado y no se permiten nuevos debates ni respuestas.

Pin It on Pinterest