Foros del Web » Programando para Internet » PHP »

buscar palabra en un campo

Estas en el tema de buscar palabra en un campo en el foro de PHP en Foros del Web. Hola ¿Cómo puedo buscar una palabra concreta dentro de un campo de una base de datos sin usar un select??? La idea sería recorrer el ...
  #1 (permalink)  
Antiguo 02/02/2014, 07:01
 
Fecha de Ingreso: diciembre-2003
Mensajes: 474
Antigüedad: 20 años, 4 meses
Puntos: 5
buscar palabra en un campo

Hola ¿Cómo puedo buscar una palabra concreta dentro de un campo de una base de datos sin usar un select???
La idea sería recorrer el campo en busca de esa palabra y si la encuentra, que haga algo.

Gracias.
  #2 (permalink)  
Antiguo 02/02/2014, 07:16
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: buscar palabra en un campo

Porque no puedes usar un SELECT
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #3 (permalink)  
Antiguo 02/02/2014, 07:32
 
Fecha de Ingreso: diciembre-2003
Mensajes: 474
Antigüedad: 20 años, 4 meses
Puntos: 5
Respuesta: buscar palabra en un campo

Es un poco largo de explicar pero lo intentaré:
tenía que meter un checkbox en el cual se pudieran seleccionar varias opciones y lo he hecho así:
intro.php:

<label for="tema">
<input type="checkbox" name="tema[]" value="uno" checked="checked">Uno
<input type="checkbox" name="tema[]" value="dos"> Dos
<input type="checkbox" name="tema[]" value="tres">Tres
<input type="checkbox" name="tema[]" value="cuatro"> Cuatro
</label>

----------------------------
inserta.php
echo "<br>- ".$tema = $_POST["tema"];
$lista_tema=implode(',',$_POST['tema']);

$sql="INSERT INTO actividades(tema) VALUES('$lista_tema')";
----------------------------

Esto arroja un valor del campo por ejemplo así: TEMA= uno,tres

Y lo que necesito es que se pueda modificar ese campo añadiendo selecciones o eliminándolas, por ejemplo que pueda se "uno" y "cuatro".

No sé si me he explicado bien pero gracias por responder.
  #4 (permalink)  
Antiguo 02/02/2014, 10:46
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: buscar palabra en un campo

Para actualizar (que es lo mismo que modificar) los datos, hazlo del mismo modo. Supongo que para mostrar las opciones que ya insertaste previamente, haces algo como esto (es un ejemplo):

Código PHP:
Ver original
  1. <?php
  2. $id = "0434";
  3. $query = mysqli_query($conexion, "SELECT * FROM tabla WHERE id = $id");
  4. if (mysqli_num_rows($query)){
  5.     $row = mysqli_fetch_array($query);
  6.     $opciones = explode(',', $row["opciones"]);
  7.     foreach ($opciones as $opcion){
  8. ?>
  9.         <input type = "checkbox" name = "tema[]" value = "<?=$opcion?>" /> <?=$opcion?>
  10. <?php
  11.     }
  12. }
  13. ?>

Como veo que los datos los tienes organizados de este modo: opcion1,opcion2,opcion3,opcion4, solamente te queda guardarlos del mismo modo, es decir, al momento de enviar los datos, supongamos que el usuario solamente seleccionó las opciones 1 y 4, entonces, solamente esas opciones deberían guardarse, por lo que al archivo que procesará los datos, llegará el array $_POST["tema"] con los valores opcion1,opcion4 y solamente te quedaría insertar una coma entre ambos datos con implode. Pero ahí no queda todo, ya que supongo que debes tener varias opciones, cada grupo de éstas debe tener un número identificador, con el cual actualizarías las opciones que desees actualizar. Para esto, puedes tener un campo oculto con el Id del grupo de opciones y sería ese valor el que te serviría para actualizar las opciones indicadas.

Esto debe ir justo después del bloque de opciones:
Código HTML:
Ver original
  1. <input type = "hidden" name = "id" value = "<?=$row["id"]?>" />

Código PHP:
Ver original
  1. $opciones = implode(',', $_POST["tema"]);
  2. $id = $_POST["id"];
  3. $query = mysqli_query($conexion, "UPDATE tabla SET opciones = '$opciones' WHERE id = $id");

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: campo, palabra, select
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 17:00.