Foros del Web » Programando para Internet » PHP »

condicion if dentro de un link con php

Estas en el tema de condicion if dentro de un link con php en el foro de PHP en Foros del Web. Hola Muchachos tengo una duda. ES posible dentro de un link poner codigo php para realizar una instruccion if? Me explico: tengo un link para ...
  #1 (permalink)  
Antiguo 21/06/2010, 14:58
 
Fecha de Ingreso: junio-2010
Mensajes: 60
Antigüedad: 13 años, 10 meses
Puntos: 0
condicion if dentro de un link con php

Hola Muchachos tengo una duda.

ES posible dentro de un link poner codigo php para realizar una instruccion if? Me explico: tengo un link para publicar noticias, si la persona tiene su sesion iniciada en mi pagina al darle click al link de publicar noticias lo lleve a la pagina de publicacion de noticias.

si no, al darl click sobre este link le debe salir un aviso que diga que se loguee o se registre.

Se puede hacer eso, alguien me podria explicar como?

Gracias muchachos.
  #2 (permalink)  
Antiguo 21/06/2010, 15:15
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: condicion if dentro de un link con php

Tambien es posible ponerlo fuera:

Código PHP:

if(condicion){

echo 
"<a href='adondevoy.php'>Link</a>";

}else{

echo 
"<a href='adondevoy.php'>Link</a>";


  #3 (permalink)  
Antiguo 21/06/2010, 15:16
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: condicion if dentro de un link con php

Y por que no lo haces con una simple condición?

Código PHP:
if(estas login)
link donde quieras
else
link donde quieras 
edito-> llegué tarde
__________________
Tu álbum de cromos online!!
  #4 (permalink)  
Antiguo 21/06/2010, 15:28
 
Fecha de Ingreso: junio-2010
Mensajes: 60
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: condicion if dentro de un link con php

Muchachos, porque el link tiene que estar visible todo el tiempo.

La situacion de la condicion de esa forma no funciona, porque lo que estan diciendo es que si estoy logueado, me aparezca el link en la pagina, si no, lleveme a otra parte, y eso no es lo que yo quiero.

Yo quiero tener un link en mi pagina principal que diga Publicar noticia, si el usuario le da click y no esta logueado, lo lleve a la pagina de login, si esta logueado lo lleve a la pagina de publicacion.

Gracias
  #5 (permalink)  
Antiguo 21/06/2010, 15:40
Avatar de hackjose  
Fecha de Ingreso: abril-2010
Ubicación: Edo Mexico
Mensajes: 1.178
Antigüedad: 14 años
Puntos: 131
Respuesta: condicion if dentro de un link con php

if(isset($_session[nombre])){
echo "<a href='pagina_de_noticias.html'>Ver noticias</a>";
}
else{
echo "<a href='pag_iniciasesion.html'>Ver noticias</a>";
}
  #6 (permalink)  
Antiguo 21/06/2010, 15:46
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: condicion if dentro de un link con php

Cita:
Iniciado por camrodri2010 Ver Mensaje
Muchachos, porque el link tiene que estar visible todo el tiempo.

La situacion de la condicion de esa forma no funciona, porque lo que estan diciendo es que si estoy logueado, me aparezca el link en la pagina, si no, lleveme a otra parte, y eso no es lo que yo quiero.

Yo quiero tener un link en mi pagina principal que diga Publicar noticia, si el usuario le da click y no esta logueado, lo lleve a la pagina de login, si esta logueado lo lleve a la pagina de publicacion.

Gracias
Eso que tu dices no es correcto, de esta manera el link siempre esta visible, lo único que cambia es la dirección del link. Lo has probado????

Código PHP:
if(estas login)
link donde quieras//visible si estas login
else
link donde quieras //visible si no estás login 
__________________
Tu álbum de cromos online!!
  #7 (permalink)  
Antiguo 21/06/2010, 17:27
 
Fecha de Ingreso: junio-2010
Mensajes: 60
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: condicion if dentro de un link con php

Cita:
Iniciado por santris Ver Mensaje
Eso que tu dices no es correcto, de esta manera el link siempre esta visible, lo único que cambia es la dirección del link. Lo has probado????

Código PHP:
if(estas login)
link donde quieras//visible si estas login
else
link donde quieras //visible si no estás login 
Listo muchachos ya arregle este tema, era algo muy sencillo pero no cai en cuenta.

Ahora tengo una duda relacionada que se me hace un poco mas compleja de resolver:

Imaginense que estoy en la index.php, el usuario llega y le da al link de publicar noticia, como no ha iniciado sesion este lo manda a la pagina de login, el usuario se loguea y al darle al boton enviar este lo redirecciona a la pagina donde se publican las noticias. yo quiero que esto pase cuando el usuario no esta logueado, pero cuando se loguea lo envia a la index, es decir no se si me estoy explicando bien, si no estoy logueado me manda a la pagina de login, y este deberia llevarme a la pagina de publicacion, pero no lo hace, este me envia a la pagina index, lo tengo asi, por que asi esta la codificacion, que si se loguea lo envie a index, pero como en este caso lo que deberia hacer es que la pagina deberia llevar al usuario a la pagina de publicacion y no de index.

ESto es un enredo, hazte para explicar el tema me hago bolas, espero que me hayan podido entender

  #8 (permalink)  
Antiguo 21/06/2010, 17:46
Avatar de vicram10  
Fecha de Ingreso: enero-2009
Ubicación: Asuncion
Mensajes: 326
Antigüedad: 15 años, 3 meses
Puntos: 27
Respuesta: condicion if dentro de un link con php

puedes crear una funcion que le llames despues de cada accion y te envie a donde tu le digas

Código PHP:
Ver original
  1. //Funcion que sirve para redirigir a un lugar seguro despues de cargar y guardar un formulario por dar un ejemplo
  2. //y asegurarnos de terminar en el lugar correcto
  3. function redirectexit($setLocation = '')
  4. {
  5.     $setLocation = !empty($setLocation) ? $setLocation : 'DIRECCION_POR_DEFECTO_SI_NO_CARGA_NADA';
  6.     header('Location: ' . str_replace(' ', '%20', $setLocation));
  7. }

Entonces tu al hacer el logueo al final le dices

Código PHP:
Ver original
  1. <?php
  2. .
  3. .
  4. .
  5. .
  6. redirectexit('form_noticias.php');
  7.  
  8. ?>

haciendo que este le envie a donde le digas en este caso para que cargue el formulario de noticias o lo que sea..

Es un ejemplo...

salu2
  #9 (permalink)  
Antiguo 21/06/2010, 18:21
 
Fecha de Ingreso: junio-2010
Mensajes: 60
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: condicion if dentro de un link con php

Cita:
Iniciado por vicram10 Ver Mensaje
puedes crear una funcion que le llames despues de cada accion y te envie a donde tu le digas

Código PHP:
Ver original
  1. //Funcion que sirve para redirigir a un lugar seguro despues de cargar y guardar un formulario por dar un ejemplo
  2. //y asegurarnos de terminar en el lugar correcto
  3. function redirectexit($setLocation = '')
  4. {
  5.     $setLocation = !empty($setLocation) ? $setLocation : 'DIRECCION_POR_DEFECTO_SI_NO_CARGA_NADA';
  6.     header('Location: ' . str_replace(' ', '%20', $setLocation));
  7. }

Entonces tu al hacer el logueo al final le dices

Código PHP:
Ver original
  1. <?php
  2. .
  3. .
  4. .
  5. .
  6. redirectexit('form_noticias.php');
  7.  
  8. ?>

haciendo que este le envie a donde le digas en este caso para que cargue el formulario de noticias o lo que sea..

Es un ejemplo...

salu2


Gracias, lo voy a probar

  #10 (permalink)  
Antiguo 22/06/2010, 11:38
 
Fecha de Ingreso: junio-2010
Mensajes: 60
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: condicion if dentro de un link con php

Cita:
Iniciado por vicram10 Ver Mensaje
puedes crear una funcion que le llames despues de cada accion y te envie a donde tu le digas

Código PHP:
Ver original
  1. //Funcion que sirve para redirigir a un lugar seguro despues de cargar y guardar un formulario por dar un ejemplo
  2. //y asegurarnos de terminar en el lugar correcto
  3. function redirectexit($setLocation = '')
  4. {
  5.     $setLocation = !empty($setLocation) ? $setLocation : 'DIRECCION_POR_DEFECTO_SI_NO_CARGA_NADA';
  6.     header('Location: ' . str_replace(' ', '%20', $setLocation));
  7. }

Entonces tu al hacer el logueo al final le dices

Código PHP:
Ver original
  1. <?php
  2. .
  3. .
  4. .
  5. .
  6. redirectexit('form_noticias.php');
  7.  
  8. ?>

haciendo que este le envie a donde le digas en este caso para que cargue el formulario de noticias o lo que sea..

Es un ejemplo...

salu2


Hola

Ayer lo probe, y no me funciono,

:(
  #11 (permalink)  
Antiguo 22/06/2010, 13:50
 
Fecha de Ingreso: junio-2010
Mensajes: 60
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: condicion if dentro de un link con php

Hola Muchachos, se me esta haciendo muy dificil resolver este problema, voy a poner el codigo de una pagina que se llama control.php que es la que me controla los inicios de sesion de mi pagina, como se pueden dar cuenta, al finala aparece un header que me redirige i pagina directamente a index.php, y por mas que yo entre por publicar noticia, el me lo redirecciona despues a index, lo que no quiero es eso, lo que quiero es que al ingresar por publicar noticia, y al entra a la pagina de login.php este me redireccione inmediatamente a la pagina de publicar noticia.

Espero que me puedan ayudar con este codigo.

Gracias.



session_start();
error_reporting(0);

$conexion = mysql_connect ("localhost", "admin", "") or die ("Fallo en la conexion al servidor");
mysql_select_db ("xxxx") or die ("No se puede encontrar la base de datos");

if ($_POST['usuario'])
{
$usuario = $_POST['usuario'];
$clave = $_POST['clave'];
if ($clave ==NULL)
{
print ("No ha escrito la clave");
}
else
{
$ingreso = mysql_query ("select usuario, clave from registro where usuario = '$usuario'") or die (mysql_error());
$datos = mysql_fetch_array ($ingreso);
if ($datos['clave'] != $clave)
{
print ("Login incorrecto");
}
else
{
$ingreso = mysql_query ("select usuario, clave from registro where usuario = '$usuario'") or die (mysql_error());
$fila = mysql_fetch_array ($ingreso);
$_SESSION['sesion'] = $fila['usuario'];
print ("Login exitoso" . $_SESSION['sesion']);
header ("location: index.php" );

Etiquetas: link
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 11:34.