Foros del Web » Programando para Internet » PHP »

Pasar variable por URL

Estas en el tema de Pasar variable por URL en el foro de PHP en Foros del Web. Hola gente! Tengo este formulario que lo que intengo hacer es pasar la variable por url el buscar.php es el mismo archivo en el que ...
  #1 (permalink)  
Antiguo 10/04/2010, 17:32
 
Fecha de Ingreso: agosto-2003
Mensajes: 524
Antigüedad: 20 años, 8 meses
Puntos: 5
Pasar variable por URL

Hola gente!

Tengo este formulario que lo que intengo hacer es pasar la variable por url

el buscar.php es el mismo archivo en el que tengo el fomulario, también intente con una pagina aparte pero aun así no se resolvió

Código HTML:
<form method="GET">
<table width="500" height="150" border="0" align="center" class="tblformprof" cellspacing="5" cellpadding="5">
  <tr>
    <td width="54" class="izq">Ciudad</td>
    <td width="197"><label>
      <input type="text" name="ciudad" id="ciudad" size="10">
    </label></td>
    <td width="59" class="izq">&nbsp;</td>
    <td width="157"><label></label></td>
  </tr>
 </table>

<a href="buscar.php?ciudad=$ciudad">BUSCAR</a> 
Luego busca la ciudad en la base de datos

Código PHP:
include ("php/conectar_db.php");

$ciudad = isset($_GET["ciudad"]) ? $_GET["ciudad"]:"";

if (
$ciudad == ""
{
    
//cuando el campo esta vacio devuelve todos los registros
    
$_pagi_sql "SELECT * FROM tb_ciudades";
} elseif (
$ciudad == ($_GET["ciudad"])) 
{
    
//sino busca la ciudad correspondiente 
    
$_pagi_sql "SELECT * FROM tb_ciudades WHERE ciuNombre LIKE '%$ciudad%'";    
}


$_pagi_cuantos 10;    
$_pagi_propagar = array("ciudad");
$_pagi_result mysql_query($_pagi_sql$Link);
include(
"php/paginator.inc.php");

echo 
"<p class='resultado'><b>Resultado(s):</b> ".$_pagi_info."</p>"

    echo 
"<table width='523' border='0' class='tblbuscarprof' align='center'>";
    echo 
"<tr>";
    echo 
"<td class='tdgris' width='60'>Ciudad</td>";
    echo 
"</tr>";
    echo 
"</table>";
while (
$Row mysql_fetch_array ($_pagi_result)) {
    echo 
"<table width='523' border='0' align='center'>";    
    echo 
"<tr>";
    echo 
"<td class='tdnegra' width='60'>".$Row["ciuNombre"]."</td>";
    echo 
"</tr>";
    echo 
" <tr>";
    echo 
" <td colspan='3'><img src='images/linea.jpg' width='523' height='12' /></td>";
    echo 
" </tr>";    
    echo 
"</table>";
}
echo 
"<br>";
echo 
"<p class='paginar'>".$_pagi_navegacion."</p>";


//cierra la base
mysql_close ($Link); 
Quisiera saber si en el código hay algo mal porque no se hace el pase de la variable, cuando pongo el nombre de una ciudad no me devuelve nada.

Espero que me puedan ayudar con esto ya busque y probé muchas cosas pero nada funciona, que puede estar pasando?

Gracias, gracias!
__________________
Saludos!!!
Maru.-
  #2 (permalink)  
Antiguo 10/04/2010, 17:39
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Pasar variable por URL

Para que el formulario envie las variables GET, tienes que hacer que se envie con un <input type="submit" />, no sirve que hagas un link, con un link no se envian los datos del formulario.


Un saludo
  #3 (permalink)  
Antiguo 10/04/2010, 18:00
 
Fecha de Ingreso: agosto-2003
Mensajes: 524
Antigüedad: 20 años, 8 meses
Puntos: 5
Respuesta: Pasar variable por URL

Gracias!!! tenias razón!!! que genio!

Solo que el buscador el con varios campos al probar con el segundo campo ya pierdo las variables cuando pagina ni idea porque pasa esto...

Código HTML:
<form method="GET">
<table width="500" height="150" border="0" align="center" class="tblformprof" cellspacing="5" cellpadding="5">
  <tr>
    <td width="54" class="izq">Ciudad</td>
    <td width="197"><label>
      <input type="text" name="ciudad" id="ciudad" size="10">
    </label></td>
    <td width="59" class="izq">&nbsp;</td>
    <td width="157"><label></label></td>
  </tr>
  <tr>
    <td class="izq">Partido</td>
    <td><label>
      <input type="text" name="partido" id="partido" size="25">
    </label></td>
   
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><label>
      <div align="center">
        <input class="boton" type="submit" name="button" id="button" value="Buscar">
        </div>
    </label></td>
    <td>&nbsp;</td>
    <td><label>
      <div align="left">
        <input class="boton"type="reset" name="button2" id="button2" value="Borrar" />
        </div>
    </label></td>
  </tr>

  <tr>
    <td>&nbsp;</td>
    <td><a href="buscar.php?ciudad=$ciudad&partido=$partido"></a></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>
</form> 

Código PHP:
include ("php/conectar_db.php");

$ciudad = isset($_GET["ciudad"]) ? $_GET["ciudad"]:"";
$partido = isset($_GET["partido"]) ? $_GET["partido"]:"";


if (
$ciudad == "") && ($partido == ""
{
    
//cuando todos los campos estan vacios
    
$_pagi_sql "SELECT * FROM tb_ciudades";
} elseif (
$ciudad == ($_GET["ciudad"]) && ($partido == "") )
{
    
//cuando todos los campos estan vacios 
    
$_pagi_sql "SELECT * FROM tb_ciudades WHERE ciuNombre LIKE '%$ciudad%'";
    echo 
$ciudad//lo puse para ver si la variable pasa
} elseif (($ciudad == "") && ($partido == ($_GET["partido"]))) 
{
    
//cuando todos los campos estan vacios 
    
$_pagi_sql "SELECT * FROM tb_ciudades WHERE ciuPartido LIKE '%$partido%'";
    echo 
$partido;
}



$_pagi_cuantos 10;    


$_pagi_propagar = array("ciudad, partido");
$_pagi_result mysql_query($_pagi_sql$Link);
include(
"php/paginator.inc.php");

echo 
"<p class='resultado'><b>Resultado(s):</b> ".$_pagi_info."</p>"

    echo 
"<table width='523' border='0' class='tblbuscarprof' align='center'>";
    echo 
"<tr>";
    echo 
"<td class='tdgris' width='60'>Ciudad</td>";
    echo 
"<td class='tdgris' width='60'>Partido</td>";
    echo 
"</tr>";
    echo 
"</table>";
while (
$Row mysql_fetch_array ($_pagi_result)) {
    echo 
"<table width='523' border='0' align='center'>";    
    echo 
"<tr>";
    echo 
"<td class='tdnegra' width='60'>".$Row["ciuNombre"]."</td>";
    echo 
"<td class='tdnegra' width='60'>".$Row["ciuPartido"]."</td>";
    echo 
"</tr>";
    echo 
" <tr>";
    echo 
" <td colspan='3'><img src='images/linea.jpg' width='523' height='12' /></td>";
    echo 
" </tr>";    
    echo 
"</table>";
}
echo 
"<br>";
echo 
"<p class='paginar'>".$_pagi_navegacion."</p>";


//cierra la base
mysql_close ($Link); 
__________________
Saludos!!!
Maru.-
  #4 (permalink)  
Antiguo 10/04/2010, 18:02
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Pasar variable por URL

Explicate un poco mejor, cuando pagina?, que datos no pierde y que datos pierde?

Etiquetas: pasar, url, variables
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 19:46.