Php Профил!

SkyWarrioR

Registered
Значи направих си логин система с администраторски панел и др екстри,но имам един линк профил и като дам на него ми изкарва
PHP:
http://localhost/CommentSystem/user_profile.php?id=
и след тва id стои празно,смисъл не ми показва профила,а кода ми за профил е:
user_profile.php
PHP:
 <?php
            if($_SESSION['is_logged'] === true ){
                $user_id = (int)$_GET['id'];
                $q = mysql_query('SELECT * FROM users WHERE user_id = "'.$user_id.'"') or die(mysql_error());
                if(mysql_num_rows($q) > 0){
                    $row = mysql_fetch_assoc($q);
                    $_SESSION['profile'] = $row;
                    echo "Твоя ник в нашия сайт: ".$_SESSION['profile']['username']."<br/>\n";
                    if($_SESSION['profile']['type'] == 3){
                        echo "Твоят ранг е: <b>Аминистратор</b>";
                    }
                    elseif($_SESSION['profile']['type'] == 2){
                        echo "Твоят ранг е: <b>Модератор</b>";
                    }
                    elseif($_SESSION['profile']['type'] == 1){
                        echo "Твоят ранг е: <b>Потребител</b>";
                    }
                }
                else{
                    echo '<div style="background:red; text-align:center; font-weight:bold;">Такъв потребител не съществува!</div><br>'."\n";
                }
            }
            else{
                echo '<div style="background:red; text-align:center; font-weight:bold;">Нямате право да разглеждате тази страница!</div><br>'."\n";
        ?>
И в index.php пиша тва:
PHP:
if($_SESSION['is_logged'] === true AND $_SESSION['user_info']['type'] == 3){
                echo "Добре дошъл <b>".$_SESSION['user_info']['username']."</b>\n | ";
                ?>
                <a href="user_profile.php?id=<?php echo $_SESSION['profile']['user_id']; ?>"><span style="font-size:12px;">Профил</span></a> |
                <?php
                echo "<a href='admin/admin.php'><span style='font-size:12px;'>Админ панел | </span></a> \n";
                echo "<a href='logout.php'><span style='font-size:12px;'>Излез</span></a> \n";
            }
Къде ми е грешката?
 
PHP:
 <?php
            if($_SESSION['is_logged'] === true ){
                $user_id = (int)$_GET['id'];
                $q = mysql_query('SELECT * FROM users WHERE id = "'.$user_id.'"') or die(mysql_error());
                if(mysql_num_rows($q) > 0){
                    $row = mysql_fetch_assoc($q);
                    $_SESSION['profile'] = $row;
                    echo "Твоя ник в нашия сайт: ".$_SESSION['profile']['username']."<br/>\n";
                    if($_SESSION['profile']['type'] == 3){
                        echo "Твоят ранг е: <b>Аминистратор</b>";
                    }
                    elseif($_SESSION['profile']['type'] == 2){
                        echo "Твоят ранг е: <b>Модератор</b>";
                    }
                    elseif($_SESSION['profile']['type'] == 1){
                        echo "Твоят ранг е: <b>Потребител</b>";
                    }
                }
                else{
                    echo '<div style="background:red; text-align:center; font-weight:bold;">Такъв потребител не съществува!</div><br>'."\n";
                }
            }
            else{
                echo '<div style="background:red; text-align:center; font-weight:bold;">Нямате право да разглеждате тази страница!</div><br>'."\n";
        ?>
 
Пробвай така:
PHP:
<a href="user_profile.php?id=<?php $_SESSION['profile']['user_id'] ?>"><span style="font-size:12px;">Профил</span></a> |
 
Защо не направиш 2 елементарни стъпки ?

PHP:
$q =  mysql_query("SELECT id FROM users WHERE username=$_SESSION['username']");
$row = mysql_fetch_assoc($q);
$id = $row['id'];
echo "<a href='profile.php?id=$id'>Профил</a>";
 
PHP:
$q =  mysql_query("SELECT user_id FROM users WHERE username='".$_SESSION['user_info']['username']."'");
$row = mysql_fetch_assoc($q);
$id = $row['id'];
echo "<a href='profile.php?id=$id'>Профил</a>";

така би трябвало да стане. Иии между другото кода ти е тотално объркващ. Не ползваш сесиите както трябва.
 
Karcho каза:
PHP:
$q =  mysql_query("SELECT user_id FROM users WHERE username='".$_SESSION['user_info']['username']."'");
$row = mysql_fetch_assoc($q);
$id = $row['id'];
echo "<a href='profile.php?id=$id'>Профил</a>";

така би трябвало да стане. Иии между другото кода ти е тотално объркващ. Не ползваш сесиите както трябва.

Съгласен!
Не си направих труда дори да го прочета..
Дадох пример как трябва да стане :)
 
PHP:
if($_SESSION['is_logged'] === true AND $_SESSION['user_info']['type'] == 3){
                echo "Добре дошъл <b>".$_SESSION['user_info']['username']."</b>\n | ";
                ?>
                <a href="user_profile.php?id=<?php echo $_SESSION['user_info']['user_id']; ?>"><span style="font-size:12px;">Профил</span></a> |
                <?php
                echo "<a href='admin/admin.php'><span style='font-size:12px;'>Админ панел | </span></a> \n";
                echo "<a href='logout.php'><span style='font-size:12px;'>Излез</span></a> \n";
:?:
 

Back
Горе