Foros del Web » Programando para Internet » PHP »

solo me aparece una letra en el titulo

Estas en el tema de solo me aparece una letra en el titulo en el foro de PHP en Foros del Web. Hola que tal, estoy tratando de hacer mi primer práctica de php y mysql, el objetivo es lograr que con esta pequeña base de datos: ...
  #1 (permalink)  
Antiguo 25/02/2010, 04:07
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Sonrisa solo me aparece una letra en el titulo

Hola que tal, estoy tratando de hacer mi primer práctica de php y mysql, el objetivo es lograr que con esta pequeña base de datos:

la cual es una tabla de una fila jaja y 4 campos
_________________________________________
url | serie | capitulo | titulo |
?d=0ZC6EXEW| One piece | 1x01 | Yo soy luffy |

algo así

y con un código php así
Código PHP:
Ver original
  1. <?php
  2. //conexion a mi BD
  3.     $conexion = mysql_connect("localhost", "usuario", "clave");
  4.     mysql_select_db("videos");
  5.  
  6. //aqui llamo a la url con GET
  7.     $url = $_GET['url'];
  8. // aquí hago la consulta a la BD
  9.     $qsql = "select titulo from anime where url=$url";
  10. // ...
  11. ?>
  12. <html>
  13. <head>
  14. //y aquí imprimo la consulta
  15. <title><?php echo $qsql['titulo']?></title>
  16. </head>
  17. <body>
  18. </body>
  19. </html>

Pero me sale solo una s en el titulo y ya probé y probé y nada alguien puede hecharme una mano?

es la primera vez que hago esto de consultar una BD jeje

PD: creo que lo que esta mal es algo de la variable que imprime el título pero no le hallo el fallo.
  #2 (permalink)  
Antiguo 25/02/2010, 04:32
 
Fecha de Ingreso: diciembre-2009
Ubicación: entre Ibiza y Barcelona :)
Mensajes: 92
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: solo me aparece una letra en el titulo

Al hacer una consulta no puedes recoger el valor que quieras directamente, tiene que pasar por un while, es decir:

Código PHP:
$qsql "select titulo from anime where url='".$url."'";
$result=mysql_query($sqsl) or die (mysql_error());
while (
$fila=mysql_fetch_array($result)){
echo 
$fila['titulo'];

Prueba eso a ver si te funciona.
  #3 (permalink)  
Antiguo 25/02/2010, 05:27
Avatar de lolitashu  
Fecha de Ingreso: enero-2010
Ubicación: Chile / Santiago / Quilicura
Mensajes: 50
Antigüedad: 14 años, 2 meses
Puntos: 2
Respuesta: solo me aparece una letra en el titulo

En primer lugar la consulta esta mal hecha, al decir:
Código PHP:
$qsql "select titulo from anime where url=$url"
esa buscando un titulo que se llame "$url", y no creo que una serie se llame asi..??
por lo que si qieres buscar lo que esta dentrod ela variable debes escapar el codigo esto se hace usan comillas, y te puedes dar cuenta facilmente porque en cualquier editor de codigo cambiara de color.
quedaria asi:
Código PHP:
$qsql "select titulo from anime where url= '".$url."'"
Se ponen puntos para concaderar, las comillas dobles escapan el codigo y las simples lo toman todo como una sola variable.

Segundo, nunca mandara los resultados proke en ningun momento mandaste la consulta, estos son los pasos para hacer una consulta:
Código PHP:
$consulta1 "select titulo from anime where url= '".$url."'";//redactas la consulta
        
$respuesta1 mysql_query ($consulta1$dblink);//la mandas
        
$extrae1 mysql_fetch_array ($respuesta1);//recibes los resultados
        
$titulo $extrae1['titulo'];//paso optativo 
Ahora sobre lo que dice marinesky:
Cita:
Iniciado por marinesky Ver Mensaje
Al hacer una consulta no puedes recoger el valor que quieras directamente, tiene que pasar por un while...
no siempre es asi, eso depende de cuantos resultados obtengas, si es mas de uno, ocupas ciclo, sino no, porque en tu caso me imagino que la url no se repite, por lo que mostrara solo 1 resultado, y eso el logico o tu titulo quedaria "titulo1titulo2titulo3" etc...
  #4 (permalink)  
Antiguo 25/02/2010, 06:21
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: solo me aparece una letra en el titulo

en realidad las comillas dobles interpretan las variables
asi que de esto
$qsql = "select titulo from anime where url=$url";
podrias dejarlo asi
$qsql = "select titulo from anime where url='$url'";

saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 25/02/2010, 11:29
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: solo me aparece una letra en el titulo

OK muchas gracias y en especial a lolitashu, ya que aunque lo que me dió fue algo confuso, al final pude arreglarlo jeje saludos.

Etiquetas: letra, titulo
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:30.