Foros del Web » Programando para Internet » PHP »

Problema con un simple POST

Estas en el tema de Problema con un simple POST en el foro de PHP en Foros del Web. Hola, estoy desarrollando el siguiente POST.... Código PHP: < form name = "form1"  id = "form1"  method = "POST"  action = "index.php?seccion=busqueda&tabla&textoabuscar" >                            < select name = ...
  #1 (permalink)  
Antiguo 30/07/2009, 03:10
 
Fecha de Ingreso: febrero-2009
Mensajes: 48
Antigüedad: 15 años, 2 meses
Puntos: 0
Problema con un simple POST

Hola, estoy desarrollando el siguiente POST....

Código PHP:
<form name="form1" id="form1" method="POST" action="index.php?seccion=busqueda&tabla&textoabuscar"
                          <
select name="tabla" size="1" class="buscador">
                            <
option selected="selected">TITULO </option>
                            <
option>AUTOR</option>
                            <
option>ISBN</option>
                            <
option>EDITORIAL</option>
                          </
select>
                        </
td>
                    </
tr>
                    <
tr
                      <
td>
                          <
input name='textoabuscar' type='text' class='buscador' id='textoabuscar' size='20' />
                        </
form></td>
                      <
td width="30"><a href="#" onclick="javascript:document.form1.submit()" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('buscaa','','img/lupa_n2.jpg',1)"><img src="img/lupa_n0.jpg" name="buscaa" width="30" height="21" border="0" id="buscaa" /></a></td>
                    </
tr
Solo que a parte de decirle que la sección es busqueda, quiero tb introducir los campos textoabuscar y tabla y enviarlos por post.

Código PHP:
<form name="form1" id="form1" method="POST" action="index.php?seccion=busqueda&tabla&textoabuscar"
He buscado pero no encuentro mi caso específico, donde envio de otra forma diferente el POST y tengo q añadirle campos escritos por el usuario.

Saludos
  #2 (permalink)  
Antiguo 30/07/2009, 05:31
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Problema con un simple POST

haber aqui hay un problema de entendimiento, cuando usas ?micampo=campo se usa GET ya que estos datos viajan por URL? entonces para que post? al menos que este recibiendo elemtos aqui por otra parte via GET cosa que no veo....

si envias datos de esa manera lo mejor seria usar inputs ocultos hidden que para eso fueron creados, y ademas si quieres enviar datos de la manera dato=dato y agregar mas es solo cosa de poner

dato1=recibedato1&dato2=recibedato2.....etc....

saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #3 (permalink)  
Antiguo 30/07/2009, 05:45
 
Fecha de Ingreso: febrero-2009
Mensajes: 48
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema con un simple POST

Ok entiendo, se me ha ido la flauta, es GET!! Pero entonces cuando escribo esto...
Código PHP:
<form name="form1" id="form1" method="POST" action="index.php?seccion=busqueda&tabla&textoabuscar"
Y quiero enviar en tabla en ese get, lo que me elijan en el combobox y en textoabuscar lo que me introduzcan en el txtbox.. Como puedo hacerlo, tendría que hacer variables php de tabla y textoabuscar?

Esto igual es una burrada pero sería mas o menos la idea que quiero hacer

Código PHP:
<form name="form1" id="form1" method="POST" action="index.php?seccion=busqueda&tabla=<?php $tabla ?>&textoabuscar=<?php $textoabuscar ?>">
El problema es que nose como almacenar en $tabla y en $textoabuscar lo que hayan introducido en el txtbox y en el combobox.

Alguna idea?

Gracias, Un saludo.
  #4 (permalink)  
Antiguo 30/07/2009, 05:53
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Problema con un simple POST

andala creo que no me entendiste, y estas mezclando algunas cosas

cuando envió por POST en el action no le veo el fin de poner index.php?cosas.....
ya que no se ejecutan
solo estas enviando los campos input y selects etc....

prueba hacer un

Código php:
Ver original
  1. <form action="index.php" name="form" method="post">
  2. <input type="text" name="algo">
  3. <input type="submit" name="enviar">
  4. </form>
  5.  
  6. <?php
  7. echo "$_POST[enviar]";
  8. ?>

ahora si quieres que tu boton sea una imagen pues lo haces tipo imagen y ya...
que es lo que creo estas intentando hacer :/, si no va por hay la cosa creo que falta una pequeña explicacion de lo que intentas hacer saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #5 (permalink)  
Antiguo 30/07/2009, 06:15
 
Fecha de Ingreso: febrero-2009
Mensajes: 48
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema con un simple POST

Si, falta una pequeña explicación. A ver si me queda claro.


El get q quiero hacer es esto. Le mando que la seccion es busqueda, y quiero mandarle los 2 parámetros introducidos por el usuario.

Código PHP:
INDEX.PHP
<form name="form1" id="form1" method="POST" action="index.php?seccion=busqueda&tabla&textoabuscarr"

Y aqui es donde lo recojo. Hay varios enlaces por la web, según cual seleccione, hago un include de la seccion deseada en un div. En este caso es búsqueda.

Código PHP:
INDEX.PHP (En un div más abajo)
<?php 
            $seccion 
$_GET["seccion"];
            switch(
$seccion){
                
//menu central
                
case "busqueda":
                    include 
'busqueda.php';
                    break;
                ...
                               }
          
?>

Ahora en búsqueda, segun la tabla que seleccione le hago un case, para hacer una consulta u otra. Te pongo el caso de que elija título. Meto las variables recibidas en el POST, en 2 variables para usar en las consultas.

Código PHP:
BUSQUEDA.PHP (código donde "trato", las variables que me llegan del POST)
<?php

$tabla 
$_POST["tabla"];
$textoabuscar $_POST["textoabuscar"];
switch (
$tabla) {
    case 
TITULO:
        
$result=mssql_query("select I_Articulos.Nombre,I_Articulos.PrecioIVA,I_Articulos.Peso,I_Autores.Nombre,I_Fabricantes.Nombre from I_Articulos,I_Autores,I_Fabricantes where I_Articulos.Nombre like '".$textoabuscar."' and I_Fabricantes.verialID=I_Articulos.ID_Fabricantes and I_Articulos.verialID=ID_Autores.ID_Articulo",$link);
        break;
    case 
AUTOR:
     .... 
etc etc
El problema que tengo, es que no se muy bien como enviar estas variables por GET, para que lleguen aqui. Supongo que tendré q retocar el switch donde hago el include y meter ahi, lo recibido en las variables $tabla y $textoabuscar.

Creo que me estoy liadon, el GET envia variables por url (por lo que lei) y el POST por stdio.

Espero te sirva para entenderme, gracias again.

Saludos.
  #6 (permalink)  
Antiguo 30/07/2009, 09:09
Avatar de Anastasiaphp  
Fecha de Ingreso: junio-2006
Ubicación: El patio de mi casa
Mensajes: 196
Antigüedad: 17 años, 10 meses
Puntos: 3
Respuesta: Problema con un simple POST

Hola!
No sé si entiendo muy bien lo que quieres hacer: quieres que cuando el usuario le de al botón del formulario vaya a la página index.php?seccion=busqueda y después te añada los parámetros tabla y textoabuscar.

Si es así el formulario debe ser en metodo GET:

Código HTML:
<?php
$textoabuscar = $_REQUEST['textoabuscar'];
$tabla = $_REQUEST['tabla'];
?>
<form action="index.php?seccion=busqueda" method="get">
<input type="text" name="textoabuscar">
<input type="text" name="tabla">
<input type="submit" name="enviar">
</form> 
Te he puesto tabla como si fuera un campo de texto, tú ponlo según lo que sea... espero que te sirva.
  #7 (permalink)  
Antiguo 30/07/2009, 11:25
 
Fecha de Ingreso: febrero-2009
Mensajes: 48
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema con un simple POST

Gracias anastasia, ahora al menos me manda por get los parámetros introducidos, pero lo de seccion nose pq no sale, lo tengo tal cual me lo pusiste tu.

Saludos.
  #8 (permalink)  
Antiguo 30/07/2009, 11:40
 
Fecha de Ingreso: febrero-2009
Mensajes: 48
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema con un simple POST

Bueno, hice una chapuza pero de momento funciona, he creado una caja con nombre seccion y value busqueda, la oculté y ahora me envia lo q queria en el get. Pero si a alguien se le ocurre algo mejor, se lo agradeceria.

El codigo de mi chapuza...
Código PHP:
<input type="text" name="seccion" value="busqueda" style="visibility:hidden" size='8'
  #9 (permalink)  
Antiguo 30/07/2009, 14:52
Avatar de Anastasiaphp  
Fecha de Ingreso: junio-2006
Ubicación: El patio de mi casa
Mensajes: 196
Antigüedad: 17 años, 10 meses
Puntos: 3
Respuesta: Problema con un simple POST

Bueno, tienes una opción mejor que es:

<input type="hidden" name="seccion" value="busqueda">
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 05:43.