无法从其他php文件中获取变量

时间:2015-08-29 18:20:38

标签: php mysql sql

我在index.php

中有这段代码
<?php
include "ch.php";
?>

ch.php
<?php
if (isset($_POST['Murad'])) {
    header("Location: Main.php");
    $firstname=$_POST['firstname'];
    $lastname=$_POST['lastname'];
    $userName=$_POST['username'];
    $password=$_POST['pwd1'];
    $userName = stripslashes($userName);
    $password = stripslashes($password);
    $userName = mysql_real_escape_string($userName);
    $password = mysql_real_escape_string($password);
    $email=$_POST['email'];
    $mysql_hostname = "localhost";
    $mysql_user = "root";
    $mysql_password = "123";
    $mysql_databse = "websiteusers";
    $prefix = "";
    $bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database");
    $sql = "
        INSERT INTO websiteusers 
        (fullname,lastname,userName,email,pass) 
        VALUES ( '$firstname', '$lastname','$userName', '$email','$password')
    ";
    mysql_select_db('websiteusers');
    $retval = mysql_query( $sql );
    if (! $retval ) {
        die('Could not enter data: ' . mysql_error());
        return false;
    } else {
        echo "Entered data successfully\n";
    }
    $usernamecheck=mysql_query("
        SELECT `userName` FROM `websiteusers` 
        WHERE userName='$userName'
    ");
    if (mysql_num_rows($usernamecheck)>=1) {
        echo $userName." is already taken";
        return false;
    }
}
?>

并且

Main.PHP

<?php
include 'ch.php';
?>

<?php  
  echo $firstname=$_POST['firstname'];
?>

但它不起作用。它在我将动作放入表单而不是标题之前有效,但它现在没有在数据库中插入用户,但是它没有显示变量。无论如何要解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

1)不要使用mysql_函数,它已被弃用,将在PHP 7稳定版本中删除,在mysqli_PDO之间选择。

2)多次没有明显原因打开和关闭你的php解释器。如果您的代码是纯PHP,那么标准就是永远不要关闭它。

3)使用header ("Location: ...")函数后,不应该处理/显示PHP或HTML。这是你在使用它时在脚本上做的最后一件事。