php - 从另一个文件php获取 session 用户名

标签 php mysql username

因此,我有一个项目正在研究,人们可以在其中使用表格创建锦标赛,并将其与信息一起保存到数据库中。他们还需要登录才能提交一个,我需要将创建它的人存储到数据库中。这是我的档案

新的Tournament.php

<?php
require 'connect.inc.php';
require 'core.inc.php';
?>
<form action="<?php $current_file ?>" method="POST" >
<dl>
    <dt>
        <label for="tour_name">Tournament Name:</label>
    </dt>
<dd>
 <input id="tour_name" type="text" name="tour_name" maxlength="30" value="<?php if (isset($tour_name)) {echo $tour_name; }?>" />
 <span class="hint">
 <span class="hint-pointer">&nbsp;</span>
 </span>
 </dd>
 <br><br>
    <dt>
        <label for="pot">Pot:</label>
    </dt>
<dd>
<input type="number" name="pot" id="pot" value="<?php if (isset($pot)) { echo $pot; } ?>" />
 <span class="hint">
 <span class="hint-pointer">&nbsp;</span>
 </span>
 </dd>
 <br><br>

    <dt>
        <label for="max_players">Max Players:</label>
    </dt>
 <dd>
 <input type="number" name="max_players" id="max_players" value="<?php if (isset($max_players)) { echo $max_players; } ?>"/> 
 <span class="hint">
 <span class="hint-pointer">&nbsp;</span>
 </span>
 </dd>
 <br><br>
    <dt>
        <label for="min_players">Minimum Players:</label>
    </dt>
 <dd>
 <input type="number" id="min_players" name="min_players" value="<?php if (isset($min_players)) { echo $min_players; } ?>" /> 
 <span class="hint">
 <span class="hint-pointer">&nbsp;</span>
 </span>
 </dd>
 <br><br>
<input type="submit" value="Register" />
</dl>
</form>

<?php

if (
isset($_POST['tour_name'])&&
isset($_POST['pot'])&&
isset($_POST['max_players'])&&
isset($_POST['min_players'])){

        $tour_name = $_POST['tour_name'];
        $pot = $_POST['pot'];
        $max_players = $_POST['max_players'];
        $min_players = $_POST['min_players'];

        if (!empty($tour_name)&&!empty($pot)&&!empty($max_players)&&!empty($min_players)) {
            if (($min_players >= 2) && ($min_players <= 6)) {
                if (($max_players >= 2) && ($min_players <= 12)) {
                    if (($pot >= 1) && ($pot <= 100)) {

                    $query = "SELECT `tour_name` FROM `tournies` WHERE `tour_name` = '$tour_name'";
                    $query_run = mysql_query($query);

                    echo mysql_error();
                        if (mysql_num_rows($query_run)==1) {
                            echo 'The username '.$tour_name.' already exist';
                        } else {
                            $query = "INSERT INTO `tournies` VALUES ('', '".mysql_real_escape_string($tour_name)."', '".mysql_real_escape_string($pot)."', '".mysql_real_escape_string($max_players)."', '".mysql_real_escape_string($min_players)."', '".mysql_real_escape_string($dbname)."')";
                            if ($query_run = mysql_query($query)) {
                                header('Location: table.php');
                            } else {
                                echo 'Registration was not a win.';
                            }
                        }

                    } else {
                        echo 'The pot must be 1-100';
                    }
                } else {
                    echo 'Maximum players must be atleast 2 and no more then 12';
                }
            } else {
                echo 'Minimum players must be atleast 2, and no more then 6';
            }
        } else {
            echo 'All fields are required';
        }
}

?>


core.inc.php

<?php
ob_start();
session_start();
$current_file = $_SERVER['SCRIPT_NAME'];

if (isset($_SERVER['HTTP_REFERER'])&&!empty($_SERVER['HTTP_REFERER'])) {
$http_referer = $_SERVER['HTTP_REFERER'];
}


function loggedin() {
    if (isset($_SESSION['user_id'])&&!empty($_SESSION['user_id'])) {
        return true;
    } else {
        return false;
    }
}

function getuserfield($field) {
    $query ="SELECT `$field` FROM `users` WHERE `id`='".$_SESSION['user_id']."'";
    if ($query_run = mysql_query($query)) {
        if ($query_result = mysql_result($query_run, 0, $field)) {
        return $query_result;
        }
    }
}
?>


connect.inc.php

<?php
$mysql_host = 'localhost';
$mysql_user = 'root';
$mysql_pass = 'root';

$mysql_db = 'tournaments';

if (!mysql_connect($mysql_host, $mysql_user, $mysql_pass) || !mysql_select_db($mysql_db)) {
    die(mysql_error());
}
?>


任何帮助深表感谢!如果我缺少任何文件,请告诉我。

最佳答案

您只需拉出会话变量$ _SESSION ['user_name']来存储它。
但是也许您不知道确切的名字,对不对?在这种情况下,请尝试

print_r($_SESSION);


进行诊断。

关于php - 从另一个文件php获取 session 用户名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18582548/

相关文章:

php - laravel如何让函数在后台运行

mysql - 避免在 MySQL 脚本中重复语句

php - Postgres 查询中引号中的变量

php - 处理来自多个第三方 API 的登录

MySQL 字段默认值未应用于连接

Mysql在插入空白值转换为null后添加触发器

cygwin - 重命名/更改cygwin用户名

c# - 如何在不使用WMI的情况下获取拥有进程的用户名?

linux - Ubuntu Linux-Maverick-是否可以在命令行中找到用户名/文件路径并将其作为参数传递?

php - 更好的 PHP、MySql、HTML 和 JavaScript IDE