Ver Mensaje Individual
  #36 (permalink)  
Antiguo 26/01/2012, 16:02
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Perfil visible si eres amigo o no

haber te doy elos codigos ya modificados para que apunten hacia profile.php y ademas e corregido unas cosillas en las consultas que estaban mal

1 - codigo del login

Código PHP:
Ver original
  1. <?php
  2.     session_start();
  3.      
  4.     if(isset($_POST['mail']) && isset($_POST['password'])){
  5.        
  6.         $mail = $_POST['mail'];
  7.         $password = $_POST['password'];
  8.        
  9.         include 'config.php' ;
  10.        
  11.         $query = mysql_query("SELECT * FROM users WHERE mail='$mail' and password='$password' ") or die (mysql_error());
  12.         $numrows = mysql_num_rows($query);
  13.        
  14.         if($numrows == 0){
  15.            
  16.             echo 'el email o la contraseña no existen';
  17.            
  18.             }else{
  19.      
  20.         while ($row = mysql_fetch_assoc($query)){
  21.            
  22.             $dbusername = $row['mail'];
  23.             $dbpassword = $row['password'];
  24.             $dbalias = $row['alias'];
  25.             $dbname = $row['name'];
  26.             $dbsurname = $row['surname']; } //fin de while
  27.        
  28.         if($mail == $dbusername){ // comparamos el email
  29.            
  30.             if($password == $dbpassword){ // comparamos la contraseña
  31.                
  32.                 // creamos la session con todos los datos en un array
  33.                
  34.             $_SESSION['user'] = array(
  35.             'username' => $dbusername,
  36.             'password' => $dbpassword,
  37.             'alias' => $dbalias,
  38.             'name' => $dbname,
  39.             'surname' => $dbsurname);
  40.                
  41.                
  42.             echo 'Se ha identificado correctamente<br><br>';  
  43.             echo 'bienvenido: <strong>'.$_SESSION['user']['username'].'</strong><br>';
  44.             echo 'Ver <a href="members/profile.php">mi perfil</a>';
  45.                
  46.                
  47.         }else{
  48.                    
  49.         echo 'El password no coincide';
  50.                    
  51.         }}else{ // fin de validacion de contraseña
  52.            
  53.         echo 'el usuario introducido no es correcto';
  54.            
  55.         }}}else{ // fin de validacion mail
  56.        
  57.         echo 'No ha introducido ningun dato';
  58.        
  59.         } // fin de isset
  60.        
  61.      
  62.     ?>

2 este codigo lo metes en members/profile.php

Código PHP:
Ver original
  1. <?php
  2.      
  3.         include 'config.php' ;
  4.      
  5.         if(isset($_GET['user'])){
  6.            
  7.         if(empty($_GET['action'])){
  8.            
  9.         if(isset($_SESSION['user'])){
  10.            
  11.         echo 'Estas viendo el perfil de '.$_GET['user'];
  12.            
  13.         }else{
  14.                
  15.         echo 'No tienes acceso para ver esta pagina<br><br>';
  16.         echo '<a href="login.php">iniciar sesion</a>';
  17.                
  18.         }}else{
  19.            
  20.         if($_GET['action'] == 'desbloquear'){
  21.            
  22.         if(isset($_SESSION['user'])){
  23.            
  24.         echo '<b>Desbloqueo</b><br>';
  25.        
  26.         $sql = mysql_query(" UPDATE friends set estado='amigo' WHERE alias='$_SESSION[user][alias]' and namefriend='$_GET[user]' or alias='$_GET[user]' and namefriend='$_SESSION[user][alias]'");
  27.      
  28.         echo $_GET['user'].' y tu ya sois amigos';
  29.                
  30.         }else{
  31.                
  32.         echo 'No tienes acceso para ver esta pagina<br><br>';
  33.         echo '<a href="login.php">iniciar sesion</a>';
  34.                
  35.         }}elseif($_GET['action'] == 'peticion'){
  36.            
  37.         if(isset($_SESSION['user'])){
  38.            
  39.         echo '<b>Amistad obtenida</b><br>';
  40.        
  41.         $sql = mysql_query(" UPDATE friends set estado='amigo' WHERE alias='$_GET[user]' and namefriend='$_SESSION[user][alias]'");
  42.      
  43.         echo $_GET['user'].' y tu ya sois amigos';
  44.                
  45.         }else{
  46.                
  47.         echo 'No tienes acceso para ver esta pagina<br><br>';
  48.         echo '<a href="login.php">iniciar sesion</a>';
  49.                
  50.         }}elseif($_GET['action'] == 'add'){
  51.            
  52.         if(isset($_SESSION['user'])){
  53.            
  54.         if($_GET['user'] == '?'){
  55.                
  56.         echo '<b>Añadir amigo</b><br>';
  57.        
  58.         $sql = mysql_query("INSERT INTO friends (alias,namefriend,estado) VALUES ('".$_SESSION['user']['alias']."','".$_POST['friend']."', 'peticion') ");
  59.      
  60.         echo 'Se ha enviado la solicitud a '.$_POST['friend'].'';
  61.                
  62.         }else{
  63.                    
  64.         echo '<b>Añadir amigo</b><br>';
  65.        
  66.         $sql = mysql_query("INSERT INTO friends (alias,namefriend,estado) VALUES ('".$_SESSION['user']['alias']."','".$_GET['user']."', 'peticion') ");
  67.      
  68.         echo 'Se ha enviado la solicitud a '.$_GET['user'].'';
  69.                
  70.         }}else{
  71.                
  72.         echo 'No tienes acceso para ver esta pagina<br><br>';
  73.         echo '<a href="login.php">iniciar sesion</a>';
  74.                
  75.         }}elseif($_GET['action'] == 'list'){
  76.                
  77.         if(isset($_SESSION['user'])){
  78.      
  79.         echo '<b>lista de usuarios</b><br>';
  80.        
  81.         $sql = mysql_query("SELECT * FROM users ");
  82.         $numrows = mysql_num_rows($sql);
  83.        
  84.         if($numrows == 0){
  85.            
  86.         echo 'no hay usuarios';
  87.            
  88.         }else{
  89.        
  90.         while ($result = mysql_fetch_assoc($sql)){
  91.            
  92.         echo $result['alias'].' <a href="members/profile.php?user='.$result['alias'].'">ver el perfil</a>';
  93.         echo '<a href="members/profile.php?user='.$result['alias'].'&action=add">añadir como amigo</a><br>';
  94.            
  95.         }}}else{
  96.                
  97.         echo 'No tienes acceso para ver esta pagina<br><br>';
  98.         echo '<a href="login.php">iniciar sesion</a>';
  99.                
  100.         }}else{
  101.                        
  102.         echo 'se ha producido en un error en el action';
  103.                        
  104.         }}}else{
  105.            
  106.         if(isset($_SESSION['user'])){
  107.      
  108.         echo 'Estas en tu perfil <b>'.$_SESSION['user']['alias'].'</b><br><br>';
  109.         echo '<b>Tu lista de amigos</b><br>';
  110.        
  111.         $sql = mysql_query("SELECT * FROM friends WHERE alias = '$_SESSION[user][alias]' and estado = 'amigo' or namefriend = '$_SESSION[user][alias]' and estado = 'amigo'");
  112.         $numrows = mysql_num_rows($sql);
  113.        
  114.         if($numrows == 0){
  115.            
  116.         echo 'no tienes amigos';
  117.            
  118.         }else{
  119.        
  120.         while ($result = mysql_fetch_assoc($sql)){
  121.            
  122.         echo $result['namefriend'].' <a href="members/profile.php?user='.$result['namefriend'].'">ver el perfil</a><br>';
  123.            
  124.         }}
  125.        
  126.         echo '<br><br><b>Tu lista de amigos bloqueados</b><br>';
  127.        
  128.         $sql = mysql_query("SELECT * FROM friends WHERE alias = '$_SESSION[user][alias]' and estado = 'bloqueado' or namefriend = '$_SESSION[user][alias]' and estado = 'bloqueado'");
  129.         $numrows = mysql_num_rows($sql);
  130.        
  131.         if($numrows == 0){
  132.            
  133.         echo 'no tienes amigos bloqueados';
  134.            
  135.         }else{
  136.        
  137.         while ($result = mysql_fetch_assoc($sql)){
  138.            
  139.         echo $result['namefriend'].' <a href="members/profile.php?user='.$result['namefriend'].'&action=desbloquear">desbloquear</a><br>';
  140.            
  141.         }}
  142.        
  143.         echo '<br><br><b>Peticiones de amistad</b><br>';
  144.        
  145.         $sql = mysql_query("SELECT * FROM friends WHERE namefriend = '$_SESSION[user][alias]' and estado = 'peticion' ");
  146.         $numrows = mysql_num_rows($sql);
  147.        
  148.         if($numrows == 0){
  149.            
  150.         echo 'no tienes peticiones';
  151.            
  152.         }else{
  153.        
  154.         while ($result = mysql_fetch_assoc($sql)){
  155.            
  156.         echo $result['alias'].' <a href="members/profile.php?user='.$result['alias'].'&action=peticion">aceptar como amigo</a><br>';
  157.            
  158.         }}
  159.        
  160.         echo '<br><br><b>Tus peticiones de amistad</b><br>';
  161.        
  162.         $sql = mysql_query("SELECT * FROM friends WHERE alias = '$_SESSION[user][alias]' and estado = 'peticion' ");
  163.         $numrows = mysql_num_rows($sql);
  164.        
  165.         if($numrows == 0){
  166.            
  167.         echo 'no tienes peticiones';
  168.            
  169.         }else{
  170.        
  171.         while ($result = mysql_fetch_assoc($sql)){
  172.            
  173.         echo $result['namefriend'].' . . . esperando confirmacion<br>';
  174.            
  175.         }}
  176.        
  177.         echo '<br><b>Agregar amigo</b><br>';
  178.         echo '<form action="members/profile.php?user=?&action=add" method="post">';
  179.         echo '<input name="friend" type="text">';
  180.         echo '<input name="friend" type="button" /></form>';
  181.         echo '<br><br><a href="members/profile.php?user=?&action=list">ver lista de usuarios</a>';
  182.        
  183.         }else{
  184.        
  185.         echo 'No tienes acceso para ver esta pagina<br><br>';
  186.         echo '<a href="login.php">iniciar sesion</a>';
  187.            
  188.         }}?>

y ya con los registros de prueba que as metido ya me dices que tal , prueba todo y si puedes subes una imagen ya cuando tengas echo y te salgan amigos para ver como quedo y tal