Foros del Web » Programando para Internet » PHP »

Medoto GET string con Espacios corta al 1er esp

Estas en el tema de Medoto GET string con Espacios corta al 1er esp en el foro de PHP en Foros del Web. Tengo la siguiente lista desplegable dentro de un form que trae titulos de libros, cuando selecciono uno y apreto buscar por GET llama a resultado.php, ...
  #1 (permalink)  
Antiguo 09/02/2011, 13:56
 
Fecha de Ingreso: octubre-2003
Ubicación: cap fed
Mensajes: 65
Antigüedad: 21 años, 1 mes
Puntos: 1
Medoto GET string con Espacios corta al 1er esp

Tengo la siguiente lista desplegable dentro de un form que trae titulos de libros, cuando selecciono uno y apreto buscar por GET llama a resultado.php, el tema es que cuando recibo el titulo en resultado.php solo recibe la palabra hasta el primer espacio:

ej: el titulo es: "la bella durmiente" solo envia la palabra la. y no el titulo completo

como hago para mandar todo el titulo??? lei algo sobre urlencode pero no se donde aplicarlo, les paso el codigo:



<form action="resultado.php" method="post">


<table border="0" align="center">

<th>Titulo: <select name="titulo" size="1" id="titulo" align="center" > <?php

$query = 'select titulo from libro order by titulo';
$result = mysql_query($query, $db);
echo "<option value = 'todos'> Todos </option>";
while ($row = mysql_fetch_assoc($result)){
echo"<option value = $row[titulo] > $row[titulo]";
}
echo"</select>";

?> </th>
<th> <input type="submit" value="Buscar" /> </th>
</tr>

</thead>
<tbody>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
</form>


el codigo de resultado.php que lo recibe:



<?php
require 'db.inc.php';


$db = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD) or
die ('Imposible conectar. chequear parametros.');
mysql_select_db(MYSQL_DB, $db) or die(mysql_error($db));
mysql_query("SET NAMES 'utf8'"); //por el tema de los acentos



$tit = $_GET[titulo];
$sql = "SELECT *
FROM libro
where titulo like '$tit%'";
$result1 = mysql_query($sql, $db);



while ($fila=mysql_fetch_array($result1))
{

$pp = '.';
$p = $fila ["path"];
$nom = $fila["isbn"];
$j = '.jpg';

$ruta = $p . $nom . $j;
//$ruta = $pp. $p . $nom . $j;


?>
<tr>
<td rowspan="9"><img src="<?php echo $ruta ?>" alt="<?php echo $fila["titulo"];?>" width="250" height="300" align="top"> </td>
<td width="400" nowrap><strong>Titulo:</strong> <?php echo $fila["titulo"]; ?> </td>
<td rowspan="9"></td>
<td rowspan="9"></td>
<td rowspan="9"></td>
<td rowspan="9"></td>
</tr>
<tr>
<td width="400" nowrap><strong>Autor:</strong><?php echo $fila["autor"]; ?></td>
</tr>
<tr>
<td width="400" nowrap><strong>Formato:</strong><?php echo $fila["formato"]; ?></td>
</tr>
<tr>
<td nowrap><p><strong>Idioma:</strong><?php echo $fila["idioma"]; ?></p></td>
</tr>
<tr>
<td nowrap><p><strong>ISBN:</strong><?php echo $fila["isbn"]; ?></p></td>
</tr>
<tr>
<td width="300"><p><strong></strong> <?php echo $fila["descri"]; ?></p></td>
</tr>
<tr>
<td><p>&nbsp;</p></td>
</tr>
<tr>
<td nowrap>&nbsp;</td>
</tr>
<tr>
<td nowrap>&nbsp;</td>
</tr>
<tr>
<td width="400" nowrap>&nbsp;</td>
</tr>
<?php


}
  #2 (permalink)  
Antiguo 09/02/2011, 13:57
 
Fecha de Ingreso: febrero-2010
Mensajes: 818
Antigüedad: 14 años, 9 meses
Puntos: 55
Respuesta: Medoto GET string con Espacios corta al 1er esp

tienes que poner el valor del option entre comillas

Código PHP:
<?php
echo "<option value='"$row['titulo'] ."'>"$row['titulo'] ."</option>";
?>
  #3 (permalink)  
Antiguo 09/02/2011, 14:00
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Medoto GET string con Espacios corta al 1er esp

se supone que para eso sirven las comillas dobles...

y nada tiene que ver tu problema con PHP, sino mas bien de HTML básico...
Código HTML:
<!-- MAL -->
<input value=valor con espacios/>

<!-- BIEN -->
<input value="valor con espacios"/> 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 09/02/2011, 14:05
 
Fecha de Ingreso: octubre-2003
Ubicación: cap fed
Mensajes: 65
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: Medoto GET string con Espacios corta al 1er esp

Cita:
Iniciado por pateketrueke Ver Mensaje
se supone que para eso sirven las comillas dobles...

y nada tiene que ver tu problema con PHP, sino mas bien de HTML básico...
Código HTML:
<!-- MAL -->
<input value=valor con espacios/>

<!-- BIEN -->
<input value="valor con espacios"/> 

no, pero no es la etiqueta input...
es un select...
no entiendo...
modifique lo de la primer recoemndacion y tampoco...

tiene que ver con el envio de un string por GET de una pagina a otra....

lo que mando tiene espacios y solo me viaja la primer palabra....
  #5 (permalink)  
Antiguo 09/02/2011, 14:07
 
Fecha de Ingreso: octubre-2003
Ubicación: cap fed
Mensajes: 65
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: Medoto GET string con Espacios corta al 1er esp

Cita:
Iniciado por Death_Empire Ver Mensaje
tienes que poner el valor del option entre comillas

Código PHP:
<?php
echo "<option value='"$row['titulo'] ."'>"$row['titulo'] ."</option>";
?>

no funciona.... el option value lo veo bien en la pagina....se me despliega el listado de libros...como corresponde...pero si selecciono por ejemplo: "la gallina turuleca" y hago click en buscar solo me llega a la pagina resultado la palabra "la"

se entiende>?
  #6 (permalink)  
Antiguo 09/02/2011, 14:10
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: Medoto GET string con Espacios corta al 1er esp

Estem...consulta... el form dice metodo POST, y el php recibe metodo GET .... se te dio por ver eso?
__________________
Mono programando!
twitter.com/eguimariano
  #7 (permalink)  
Antiguo 09/02/2011, 14:19
 
Fecha de Ingreso: octubre-2003
Ubicación: cap fed
Mensajes: 65
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: Medoto GET string con Espacios corta al 1er esp

Cita:
Iniciado por SirDuque Ver Mensaje
Estem...consulta... el form dice metodo POST, y el php recibe metodo GET .... se te dio por ver eso?
perdon, ya lo arregle, es que estuve toqueteando tanto porque hace horas que estoy con esto....

me quedo mal..pero originalmente esta bien...
sigo sin poder pasar por GET una cadena que tiene espacios...


slds
  #8 (permalink)  
Antiguo 09/02/2011, 14:22
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Medoto GET string con Espacios corta al 1er esp

a ver, pero si estas usando comillas para el value?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 09/02/2011, 14:30
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: Medoto GET string con Espacios corta al 1er esp

Si es metodo GET

ve de esta manera la URL en el explorador?

../resultado.php?titulo=la+novicia+revelde
__________________
Mono programando!
twitter.com/eguimariano
  #10 (permalink)  
Antiguo 09/02/2011, 14:31
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: Medoto GET string con Espacios corta al 1er esp

Cita:
$tit = $_GET[titulo];
$sql = "SELECT *
FROM libro
where titulo like '$tit%'";
$result1 = mysql_query($sql, $db);

$tit = $_GET[titulo]; <--- MAL
$tit = $_GET['titulo']; <--- bien
__________________
Mono programando!
twitter.com/eguimariano
  #11 (permalink)  
Antiguo 09/02/2011, 14:34
 
Fecha de Ingreso: octubre-2003
Ubicación: cap fed
Mensajes: 65
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: Medoto GET string con Espacios corta al 1er esp

Cita:
Iniciado por SirDuque Ver Mensaje
$tit = $_GET[titulo]; <--- MAL
$tit = $_GET['titulo']; <--- bien
le puse las comillitas pero sigue pasando....solo recibe la primer palabra antes del espacio....
  #12 (permalink)  
Antiguo 09/02/2011, 14:36
 
Fecha de Ingreso: octubre-2003
Ubicación: cap fed
Mensajes: 65
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: Medoto GET string con Espacios corta al 1er esp

Cita:
Iniciado por SirDuque Ver Mensaje
Si es metodo GET

ve de esta manera la URL en el explorador?

../resultado.php?titulo=la+novicia+revelde
exacto!!!

mira como llega :

http://localhost/frontend/resultado.php?titulo=El


solo figura El y yo seleccione de la lista desplegable un titulo que es "El sistema maldito"
  #13 (permalink)  
Antiguo 09/02/2011, 14:39
 
Fecha de Ingreso: febrero-2010
Mensajes: 818
Antigüedad: 14 años, 9 meses
Puntos: 55
Respuesta: Medoto GET string con Espacios corta al 1er esp

insisto copia la linea que te puse mas arriba.

lo que tu ves del option no es necesariamente el valor

<option value='algo esta aca'>Hola</option> o que veras sera Hola pero lo que envias es algo esta aca, pero con las comillas o sino solo toma hasta el espacio.
  #14 (permalink)  
Antiguo 09/02/2011, 14:45
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: Medoto GET string con Espacios corta al 1er esp

Cita:
Iniciado por jonini Ver Mensaje
exacto!!!

mira como llega :

http://localhost/frontend/resultado.php?titulo=El


solo figura El y yo seleccione de la lista desplegable un titulo que es "El sistema maldito"
en lo personal no me gusta como armaste el form...

Podemos probar este form?

aver que envia:

Código PHP:
Ver original
  1. <form action="resultado.php" method="get">
  2. <table border="0" align="center">
  3. <tr>
  4. <td>
  5. <select name="">
  6.   <option value="todos">Todos</option>
  7.   <option value="la senicienta">La senicienta</option>
  8.   <option value="el lobo">el lobo</option>
  9.   <?php
  10.   $opcion="la casa";
  11.   echo ' <option value="'.$opcion.'">'.$opcion.'</option>';
  12.   ?>
  13. </select>
  14. </td>
  15. </tr>
  16. </table>
  17. <p align="center">
  18.   <input type="submit" value="Enviar">
  19. </p>
  20. </form>
__________________
Mono programando!
twitter.com/eguimariano
  #15 (permalink)  
Antiguo 09/02/2011, 14:47
 
Fecha de Ingreso: octubre-2003
Ubicación: cap fed
Mensajes: 65
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: Medoto GET string con Espacios corta al 1er esp

Cita:
Iniciado por Death_Empire Ver Mensaje
insisto copia la linea que te puse mas arriba.

lo que tu ves del option no es necesariamente el valor

<option value='algo esta aca'>Hola</option> o que veras sera Hola pero lo que envias es algo esta aca, pero con las comillas o sino solo toma hasta el espacio.
GRACIAS...tenias razon, lo habia hecho pero no me funciono, ahora probe denuevo y si...evidentemente lo hice mal...produicto del cansancio de intentarlo todo y nada....

muchas gracias!!1

Etiquetas: corta, espacios, string
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 20:28.