Autor
|
Tema: If en un formulario (Leído 3,503 veces)
|
viher
Desconectado
Mensajes: 113
|
hola,pues tengo el siguiente formulario: <form id="form1" name="buscador" method="post" action="buscador.php"> <label for="textfield"></label><br> <input type="text" name="palabra" id="textfield" /> <input type="submit" name="button" id="button" value="Buscar" /> <br><input name="radio" type="radio" id="radio" value="radio" checked="checked" /> Películas <input type="radio" name="radio2" id="radio2" value="radio2" /> <label for="radio2"></label> Revistas <label for="radio"></label> </form> el caso es que queria ver si es posible con un if o algo hacer que si se pulsa la opción de "radio" la action del form vaya a buscador.php y si la opcion "radio2" es seleccionada la action del form vaya a otro archivo php como por ejemplo buscador.php es esto posible y como se podria hacer? gracias esque estoy empezando en php
|
|
|
En línea
|
|
|
|
Dznp
Desconectado
Mensajes: 119
|
Si, se puede. Bué, en realidad con lo que vos estas usando no podrías, ya que podes seleccionar 2 a la ves, podes usar un select <select name="nombre" size="1" >
y un php más o menos así. <?php $var=$_POST[nombre]; if($var=='radio'){ echo 'acción 1'; } else { echo 'Acción 2'; } ?>
Espero que te sirva!
|
|
« Última modificación: 19 Agosto 2010, 03:24 am por Dznp »
|
En línea
|
|
|
|
viher
Desconectado
Mensajes: 113
|
asi lo personalicé,pero cuando el doy al boton del formulario para buscar me lleva al archivo "2.php" con las 2 opciones,aunque las cambie no me lleva a buscador.php <form id="form1" name="buscador" method="post" action="<?php $var=$_POST[nombre]; if($var=='RadioGroup1'){ echo 'buscador.php'; } else { echo '2.php'; } ?>"> <label for="textfield"></label><br> <input type="text" name="palabra" id="textfield" /> <input type="submit" name="button" id="button" value="Buscar" /><br> <label> <input name="RadioGroup1" type="radio" id="RadioGroup1_0" value="Películas" checked="checked" /> Películas</label> <label> <input type="radio" name="RadioGroup1" value="Revistas" id="RadioGroup1_1" /> Revistas</label> <label for="radio"></label> <label for="radio2"></label> </form>
|
|
|
En línea
|
|
|
|
Dznp
Desconectado
Mensajes: 119
|
No no, eso esta mal!
El codigo que yo te di en php tendría que ir en buscador.php, ese archivo recibe las variables.
|
|
|
En línea
|
|
|
|
Shell Root
|
Así? <form action='index.php' method='post'> <input type="text" name="txtWord" /> <input type="submit" name="btnSearch" value="Search..." /><br> <input type="radio" value="Movie" id="rType" name="rType" checked="checked" />Movie <input type="radio" value="Magazines" id="rType" name="rType" />Magazines
<?php $stxtWord = $_POST['txtWord']; $srType = $_POST['rType']; if($srType == 'Movie'){ echo 'The name movie is: '.$stxtWord; }else{ echo 'The name magazine is: '.$stxtWord; } ?>
|
|
« Última modificación: 19 Agosto 2010, 04:01 am por Shell Root »
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
viher
Desconectado
Mensajes: 113
|
formulario: <form id="form1" name="buscador" method="post" action="buscador.php"> <label for="textfield"></label><br> <input type="text" name="palabra" id="textfield" /> <input type="submit" name="button" id="button" value="Buscar" /><br> <label> <input name="RadioGroup1" type="radio" id="RadioGroup1_0" value="Películas" checked="checked" /> Películas</label> <label> <input type="radio" name="RadioGroup1" value="Revistas" id="RadioGroup1_1" /> Revistas</label> <label for="radio"></label> <label for="radio2"></label> </form>
buscador.php <?php // maximo por pagina $limit = 25; // pagina pedida $pag = (int) $_GET["pag"]; if ($pag < 1) { $pag = 1; } $offset = ($pag-1) * $limit; $var=$_POST[palabra]; if($var=='RadioGroup1'){ $sql = "SELECT SQL_CALC_FOUND_ROWS img, nombre, id FROM peliculas WHERE nombre like '%$buscar%' order by id desc LIMIT $offset, $limit"; } else { $sql = "SELECT SQL_CALC_FOUND_ROWS img, nombre, id FROM revistas WHERE nombre like '%$buscar%' order by id desc LIMIT $offset, $limit"; } $sqlTotal = "SELECT FOUND_ROWS() as total"; // Total de registros sin limit $total = $rowTotal["total"]; ?>
pues eso es lo que hice,lo que pasa es que seleccione la opción Revistas o Películas me saca la consulta de la tabla revistas.¿Porque?¿Qué estoy haciendo mal? Gracias
|
|
« Última modificación: 19 Agosto 2010, 14:59 pm por viher »
|
En línea
|
|
|
|
cassiani
Desconectado
Mensajes: 978
« Anterior | Próximo »
|
Aquí: debe llevar comillas:
|
|
|
En línea
|
|
|
|
|
Shell Root
|
Mirad lo siguiente: name="buscador" method="post" action="buscador.php"> <input type="text" name="palabra" id="textfield" /> <input type="submit" name="button" id="button" value="Buscar" /> <input name="RadioGroup1" type="radio" id="RadioGroup1_0" value="Películas" checked="checked" />Películas <input type="radio" name="RadioGroup1" value="Revistas" id="RadioGroup1_1" />Revistas
<?php $limit = 25; $pag = (int) $_GET["pag"]; if($pag < 1){ $pag = 1; } $offset = ($pag-1) * $limit; $var = $_POST['palabra']; $srType = $_POST['RadioGroup1']; # Aquí el valor del radio seleccionado if($srType == 'pelicula'){ $sql = "SELECT SQL_CALC_FOUND_ROWS img, nombre, id FROM peliculas WHERE nombre like '%".$buscar."%' order by id desc LIMIT ".$offset.", ".$limit; }else if($srType == 'revistas'){ $sql = "SELECT SQL_CALC_FOUND_ROWS img, nombre, id FROM revistas WHERE nombre like '%".$buscar."%' order by id desc LIMIT ".$offset.", ".$limit; }else{ $sql = "SELECT -1 As 'ERROR'"; } $sqlTotal = "SELECT FOUND_ROWS() as total"; $total = $rowTotal["total"]; ?>
|
|
|
En línea
|
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
|
|
|
cassiani
Desconectado
Mensajes: 978
« Anterior | Próximo »
|
en efecto, capturabas el valor del text y no el de los radio butoms.
|
|
|
En línea
|
|
|
|
|
|