2013-09-03 4 views
0

Итак, у меня есть проект, над которым я работаю, где люди создают турниры с формой, и это сохраняет базу данных с информацией. Им также необходимо войти в систему, чтобы отправить ее, и мне нужно сохранить, кто ее создал, в базу данных. Вот мои файлыПолучение имени пользователя из другого файла php

новый 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()); 
} 
?> 

Любая помощь очень ценится! Если есть какие-то файлы, которые я пропускаю, просто дайте мне знать.

+3

Итак ... в чем проблема? – Amadan

+0

@Amadan Я не уверен, как отправить свое имя пользователя в новую базу данных. – user2288508

ответ

0

Вы просто извлекаете переменную сеанса $ _SESSION ['user_name'] для ее сохранения. Но, может быть, вы точно не знаете, какое именно имя, верно? В этом случае попробуйте

print_r($_SESSION); 

для диагностики.

+0

Когда я использую 'print_r ($ _ SESSION);' 'Я получаю Array ([user_id] => 8 [username] =>)' – user2288508

+0

Это означает, что переменная сеанса для имени пользователя $ _SESSION ['username'], однако , Пусто. – haibuihoang

Смежные вопросы