Foros del Web » Programando para Internet » PHP »

parte de URL no hace caso

Estas en el tema de parte de URL no hace caso en el foro de PHP en Foros del Web. Hola, tengo 1 codigo, en URL, que una parte de el no hace la funcion que debe, es esto: si lo pongo asi funciona: http ...
  #1 (permalink)  
Antiguo 14/06/2010, 17:23
Avatar de Most  
Fecha de Ingreso: marzo-2009
Mensajes: 642
Antigüedad: 15 años, 1 mes
Puntos: 6
parte de URL no hace caso

Hola, tengo 1 codigo, en URL, que una parte de el no hace la funcion que debe, es esto:

si lo pongo asi funciona:
http ://todoenlaces.org/categoria/peliculas.php?ficha=1&viendo=/avast/

y si cambio viendo=/avasta/ por sfsdfsdfsg(letras aleatorias) o lo borro y lo dejo [ http ://todoenlaces.org/categoria/peliculas.php?ficha=1 ] tambien funciona, osea la funcion viendo= no funciona

Codigo enlace:
Código HTML:
<a href="categorias/peliculas.php?ficha='.$row['id'].'&viendo='.$row['nombre'].'">ver</a> 
la ficha recibe asi:
Código PHP:
$id=$_GET["ficha"];  
$sql "select * from peliculas WHERE id = '".$id."' LIMIT 1"
espero que me podais ayudar...

Última edición por Most; 14/06/2010 a las 17:51
  #2 (permalink)  
Antiguo 14/06/2010, 17:41
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 8 meses
Puntos: 150
Respuesta: parte de URL no hace caso

Creo que el problema viene en la barra / , prueba a sustituirla con str_replace() por otro caracter y luego retomarlo o algo asi....
  #3 (permalink)  
Antiguo 14/06/2010, 17:50
Avatar de Most  
Fecha de Ingreso: marzo-2009
Mensajes: 642
Antigüedad: 15 años, 1 mes
Puntos: 6
Respuesta: parte de URL no hace caso

esa barra como si no estubiese por que la acabo de borrar jeje...

y sigue =...
  #4 (permalink)  
Antiguo 14/06/2010, 18:35
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: parte de URL no hace caso

pues de hecho tiene todo el sentido del mundo... en ninguna parte de tu código condicionas -ni revisas, ni usas- la variable del titulo...

actualmente lo único que haces, es realizar una consulta en base el ID, no se si me explico pero esa es la razón de tu problema... ;)

solo necesitas resolver esa cuestión, quizá agregando otra condición en la consulta con base al titulo, etc...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 14/06/2010, 18:39
Avatar de Most  
Fecha de Ingreso: marzo-2009
Mensajes: 642
Antigüedad: 15 años, 1 mes
Puntos: 6
Respuesta: parte de URL no hace caso

Si, ya lo he echo, pero nada, lo he echo asi:


Código PHP:
$id=$_GET["ficha"];  
$viendo=$_GET["viendo"];
$sql "select * from peliculas WHERE id = '.$id.' '.$viendo.' '.$viendo.' LIMIT 1"
  #6 (permalink)  
Antiguo 14/06/2010, 18:46
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: parte de URL no hace caso

pues no hace nada por de hecho está mal tu sintaxis, así como tu consulta...

mira el siguiente ejemplo, así deberías crear tu consulta...
Cita:
SELECT * FROM tabla WHERE id = 1 AND titulo = 'hola'
recuerda que solo es un ejemplo, ¿si notas las diferencias??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 14/06/2010, 18:46
rpv
 
Fecha de Ingreso: febrero-2010
Mensajes: 275
Antigüedad: 14 años, 2 meses
Puntos: 10
Respuesta: parte de URL no hace caso

mmm, el código que colocas en el post #5 es muy diferente al del post #1, por esa razón no te sirvieron las respuestas de los foristas, recuerda que mysql toma como campos (columnas) los textos alfanuméricos no entrecomillados, es decir:

Código SQL:
Ver original
  1. WHERE id=55 /* es válido puesto que los campos no pueden ser solo numéricos */
  2.  
  3. WHERE id=55usuario /* es inválido puesto que el dato es alfanumérico, aquí mysql `entiende` que estás comparando id con el campo 55usuario, que no es un campo y por tanto te dará error */
  4.  
  5. WHERE id='55usuario' /* es válido */

igual puedes usar comillas dobles en lugar de la simple, ambas indican que el texto es un string y no un campo.
  #8 (permalink)  
Antiguo 14/06/2010, 18:47
Avatar de Most  
Fecha de Ingreso: marzo-2009
Mensajes: 642
Antigüedad: 15 años, 1 mes
Puntos: 6
Respuesta: parte de URL no hace caso

aja osea asi:

Código PHP:
Ver original
  1. $sql = "select * from peliculas WHERE id = ".$id." AND ".$viendo." LIMIT 1";
  #9 (permalink)  
Antiguo 14/06/2010, 18:52
rpv
 
Fecha de Ingreso: febrero-2010
Mensajes: 275
Antigüedad: 14 años, 2 meses
Puntos: 10
Respuesta: parte de URL no hace caso

nou, sigue estando errada tu consulta, primero explica con qué quieres comparar $viendo?, es decir, $id lo comparas con el campo id (nota la diferencia de una variable php con un campo de mysql) y $viendo con qué campo lo asocias?
  #10 (permalink)  
Antiguo 14/06/2010, 18:54
Avatar de Most  
Fecha de Ingreso: marzo-2009
Mensajes: 642
Antigüedad: 15 años, 1 mes
Puntos: 6
Respuesta: parte de URL no hace caso

$viendo = titulo
  #11 (permalink)  
Antiguo 14/06/2010, 19:05
rpv
 
Fecha de Ingreso: febrero-2010
Mensajes: 275
Antigüedad: 14 años, 2 meses
Puntos: 10
Respuesta: parte de URL no hace caso

bien, entonces tu consulta debería ser algo así:


Código PHP:
Ver original
  1. $sql="select * from peliculas WHERE id=".$id." AND titulo='".$viendo."' LIMIT 1";


recordando que $id debe ser solo numérica, de ser alfanumérica deberías usar comillas como en el caso de $viendo.
  #12 (permalink)  
Antiguo 14/06/2010, 19:08
Avatar de Most  
Fecha de Ingreso: marzo-2009
Mensajes: 642
Antigüedad: 15 años, 1 mes
Puntos: 6
Respuesta: parte de URL no hace caso

ok voy a probar
  #13 (permalink)  
Antiguo 14/06/2010, 19:11
Avatar de Most  
Fecha de Ingreso: marzo-2009
Mensajes: 642
Antigüedad: 15 años, 1 mes
Puntos: 6
Respuesta: parte de URL no hace caso

no me muestra contenido:

web

Última edición por Most; 14/06/2010 a las 19:24
  #14 (permalink)  
Antiguo 14/06/2010, 19:15
rpv
 
Fecha de Ingreso: febrero-2010
Mensajes: 275
Antigüedad: 14 años, 2 meses
Puntos: 10
Respuesta: parte de URL no hace caso

esto puede significar varias cosas, la más básica es que verifiques con alguna utileria tipo phpmyadmin que en verdad exista un registro con id=1 y titulo='avast', recuerda que deben cumplirse las dos condiciones, si en tu fila de id número 1 tiene un titulo distinto ya no se cumplen.
  #15 (permalink)  
Antiguo 14/06/2010, 19:20
Avatar de Most  
Fecha de Ingreso: marzo-2009
Mensajes: 642
Antigüedad: 15 años, 1 mes
Puntos: 6
Respuesta: parte de URL no hace caso

Muchas gracias rpv, ya esta, era 1 pequeña cosa que se me abia pasado por alto.

un saludo.

Etiquetas: url
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 02:40.