Tengo una duda sobre como comparar cadenas de texto, necesito comparar varias cadenas de textos que contienen emails y comprobar que en ambas no se introducen dos emails iguales.
![lloron](http://static.forosdelweb.com/fdwtheme/images/smilies/chillando.png)
| |||
![]() Muy buenas, lo primero gracias por vuestro tiempo. Tengo una duda sobre como comparar cadenas de texto, necesito comparar varias cadenas de textos que contienen emails y comprobar que en ambas no se introducen dos emails iguales. ![]()
__________________ Ayudar cuesta mucho, dar las gracias no tanto, tenlo en cuenta siempre. |
| |||
Respuesta: Duda con cadenas de texto La idea era compararlos antes de entrar en la base de datos los correos, yo ando googleando y creo que lo que más se acerca a lo que deseo es: strpos() Voy a ver si entiendo como usarla y más importante como introducirla entre los for y las mierdas que tiene el script. Gracias por tu tiempo.
__________________ Ayudar cuesta mucho, dar las gracias no tanto, tenlo en cuenta siempre. |
| |||
Respuesta: Duda con cadenas de texto No entiendo bien tu problema. Si lo que estás buscando es que no se ponga dos veces el mismo email, lo único que tienes que hacer es un bucle if básico. Código PHP: |
| |||
Respuesta: Duda con cadenas de texto a ver, voy a hacer version extendida de la explicacion. En el formulario genero X (donde x es un numero indicado por el usuario) input con el name="email[]" y dentro de estos se escriben los emails deseados separados por un espacio y se envian contra la aplicacion. Bien cuando la aplicacion los recibe los tiene que insertar en la base de datos, para ello antes de esto hacemos un explode y obtenemos los distintos emails, como metodo de control antes de insertarlos, para que no se inserten a lo loco mi idea era comparar por ejemplo email[0] contra email[1] email[2]... y que despues email[1] se comparara con email[2] y asi sucesivamente para comprobar que ninguna cadena entre si tiene el mismo email en ella. no se si he aclarado la cosa o la he liado mas...
__________________ Ayudar cuesta mucho, dar las gracias no tanto, tenlo en cuenta siempre. |
| ||||
Respuesta: Duda con cadenas de texto Pues a ver si tu ya estás usando un:
Código HTML:
Ver original Vas a recibir ya un array, así que el explode sobra; si lo que quieres es eliminar los emails repetidos usa array_unique.Igual si lo que recibes es una cadena del tipo:
Código PHP:
Ver original Puedes hacer igual algo como esto:
Código PHP:
Ver original Como ves, es el mismo proceso. Si quieres general algún tipo de alerta al usuario por colocar emails repetidos, ya deberías de trabajar con array_map. Saludos
__________________ Haz preguntas inteligentes-Como ser Hacker No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta. |
| |||
Respuesta: Duda con cadenas de texto Muchas gracias, creo que vamos por el buen camino y vot ahora a mirar la opcion que arriba me comentais, de todas formas por clarificar yo lo que queria era por ejemplo: Código PHP: y si esto no se puede hacer, lo logico seria usar los arrays y comparar los valores de dentro de uno con los de dentro del otro, pero eso complejizaria mucho todo el proceso de captura de datos y validacion creandome muchos quebraderos de cabeza...
__________________ Ayudar cuesta mucho, dar las gracias no tanto, tenlo en cuenta siempre. Última edición por No-NaMe; 06/02/2014 a las 09:57 |
| |||
Respuesta: Duda con cadenas de texto Se puede hacer con strpos(); pero creo que inevitablemente vas a necesitar usar arrays, porque si no, ¿cómo vas a saber qué valores buscar? Imagino que tienes un array que se llama $valor, y que guarda los strings donde hay que buscar las palabras repetidas. Código PHP: Recorre todos los valores de tu array $valor, comparando (siempre que no sean el mismo) si existen valores duplicados. |
| |||
Respuesta: Duda con cadenas de texto El Muchas gracias a todos, esta opcion, creo que es la mas correcta (Aqui mi adapatacion para que me funcione) Código PHP: Código PHP:
__________________ Ayudar cuesta mucho, dar las gracias no tanto, tenlo en cuenta siempre. |
| ||||
Respuesta: Duda con cadenas de texto
__________________ Haz preguntas inteligentes-Como ser Hacker No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta. |
| |||
![]() Muchisimas gracias a todos, el problema esta resuelto (ahora a ver donde se cambiavaba tema a solved...) Y gracias de nuevo al que puso la correccion por que yo la probe pero estama en modo burro y se me olvido cerrar el parentesis 2 veces. Chicos la verdad es que da gusto con gente como vosotros, teneis todos los aportes que han dado valor a esta discusion votados como positivos, gran trabajo.
__________________ Ayudar cuesta mucho, dar las gracias no tanto, tenlo en cuenta siempre. |
Etiquetas: |