Foros del Web » Programando para Internet » PHP »

SELECT con $_POST

Estas en el tema de SELECT con $_POST en el foro de PHP en Foros del Web. Cree este tema pues he buscado la solucion y no la encuetro Con esta consulta no tengo problema Código PHP: <?php  $a = 'Bucaramanga' ; ...
  #1 (permalink)  
Antiguo 24/10/2007, 08:15
 
Fecha de Ingreso: octubre-2007
Mensajes: 54
Antigüedad: 16 años, 6 meses
Puntos: 0
SELECT con $_POST

Cree este tema pues he buscado la solucion y no la encuetro

Con esta consulta no tengo problema
Código PHP:
<?php 
$a
='Bucaramanga';
$sql "SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad='$a'";
$consulta mysql_query($sql$link)
?>
Pero cuando utilizo esta no me aparecen resultados
Código PHP:
<?php 
$a
=$_POST['Ciudad'];
echo 
$a;
$sql "SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad='$a'";
$consulta mysql_query($sql$link)
?>
el echo $a lo utilizo para verificar que si se esta recibido la variable del formulario, y si lo hace pues ese echo me imprime Bucaramanga, entonces eso quiere decir que $a='Bucaramanga'; pero porque no funciona el SELECT ?????
  #2 (permalink)  
Antiguo 24/10/2007, 08:18
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Re: SELECT con $_POST

Yo lo haría de esta manera
Código PHP:
<?php 
$a
=$_POST['Ciudad'];
echo 
$a;
$sql "SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad='".$a."'";
$consulta mysql_query($sql$link)
?>
Otra cosa es imprimir $sql y veas cómo lo está tomando
Código PHP:
<?php 
$a
=$_POST['Ciudad'];
echo 
$a;
$sql "SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad='$a'";
echo 
$sql;
$consulta mysql_query($sql$link)
?>
__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #3 (permalink)  
Antiguo 24/10/2007, 08:24
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: SELECT con $_POST

Hola, asi a primera vista no veonada extraño, aparte si compruebas la variable y te llega bien se me hace mas raro.

a ver... lo q puedes hacer es imprimir tmb la consulta por pantalla a ver si lo hace bien
Código PHP:
$sql "SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad='$a'";
echo 
$sql."<br>"
y una cosa q tendrias q acostumbrarte es a usar el mysql_error

Código PHP:
$sql "SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad='$a'";
echo 
$sql."<br>";
$consulta mysql_query($sql$link) or die("Error SQL:".mysql_error());
//-- sigue con tu codigo para mostrar los datos.... 
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #4 (permalink)  
Antiguo 24/10/2007, 08:27
 
Fecha de Ingreso: octubre-2007
Mensajes: 54
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: SELECT con $_POST

Gracias TolerantX que agil respuesta

intente como propones ciudad='".$a."'" y no tengo resultados despues del mysql_query tengo el siguiente codigo

Código PHP:
<table>
<?php while($row_consulta mysql_fetch_assoc($consulta)) { ?>
   <tr>
    <td><?php echo $row_consulta["empresa"]?></td>
    <td><?php echo $row_consulta["telefax"]?></td>
    <td><?php echo $row_consulta["ciudad"]?></td>
  </tr>
</table>
  <?php }?>
Y cuando coloco $a='Bucaramanga'; me aparecen los resultados que quiero
  #5 (permalink)  
Antiguo 24/10/2007, 08:29
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Re: SELECT con $_POST

Imprime tu consulta con echo $sql para que veas como se esta generando.

Saludos.
  #6 (permalink)  
Antiguo 24/10/2007, 08:31
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Re: SELECT con $_POST

Como te comento imprime el valor de $sql y como dice sergi_climent, utiliza mysql_error para que veas donde estás mal

Por cierto aquí estás mal
Código PHP:
<table>
<?php while($row_consulta mysql_fetch_assoc($consulta)) { ?>
   <tr>
    <td><?php echo $row_consulta["empresa"]?></td>
    <td><?php echo $row_consulta["telefax"]?></td>
    <td><?php echo $row_consulta["ciudad"]?></td>
  </tr>
</table>
  <?php }?>
Quedaría así

Código PHP:
<table>
<?php while($row_consulta mysql_fetch_assoc($consulta)) { ?>
   <tr>
    <td><?php echo $row_consulta["empresa"]?></td>
    <td><?php echo $row_consulta["telefax"]?></td>
    <td><?php echo $row_consulta["ciudad"]?></td>
  </tr>
  <?php }?>
</table>
__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #7 (permalink)  
Antiguo 24/10/2007, 08:37
 
Fecha de Ingreso: octubre-2007
Mensajes: 54
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: SELECT con $_POST

Código PHP:
$a=$_POST['Ciudad'];
$sql "SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad='$a'";
echo 
$sql."<br>"
y me imprime lo siguiente
SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad=' bucaramanga'

tambien coloque el mysql_error() como me recomendaron y no genera ningun error...

la variable $_POST['Ciudad'] proviene de un select de un formulario de la misma pagina el acccion del formulario es $pag.?accion=buscar donde $pag=$_SERVER['PHP_SELF'];


entonces el formulario lo muestra if (!isset($_GET['accion'])){ ...................}
y los resultados if ($_GET['accion']=="buscar"){......... despues de esto viene el codigo que les he posteado

PD : si asi lo tengo <?php }?></table> fue error mio cuando lo puse en el FORO
  #8 (permalink)  
Antiguo 24/10/2007, 08:40
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Re: SELECT con $_POST

Veo un espacio en tu valor ' bucaramanga'

Checa eso porque no es lo mismo ' bucaramanga' que 'bucaramanga'
SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad=' bucaramanga'
__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #9 (permalink)  
Antiguo 24/10/2007, 08:41
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Re: SELECT con $_POST

Prueba esto:
Código PHP:
$a=trim($_POST['Ciudad']);
$sql "SELECT empresa, telefax, ciudad FROM empresas WHERE ciudad='$a'";
echo 
$sql."<br>"
Saludos.
  #10 (permalink)  
Antiguo 24/10/2007, 08:45
 
Fecha de Ingreso: octubre-2007
Mensajes: 54
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: SELECT con $_POST

TolerantX eres un experto !!!

Si era el Espacio lo que paso es que en el select tengo un dato dinamico asi:
Código PHP:
<select name="Ciudad">
<?php while ($row_ciudad mysql_fetch_assoc($ciudad)) { ?>
        <option value=" <?php echo $row_ciudad["ciudad"]?>"><?php echo $row_ciudad["ciudad"]?></option>
      <?php }?>
</select>
y en la etiqueta <option value=" habia un espacio y por eso no funcionaba pero ya lo corregi y eso era excelente este foro por su velocidad

Última edición por fa61an; 24/10/2007 a las 08:51
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 05:53.