簡體   English   中英

移至Web服務器后無法讀取或上傳php中的文件名

[英]Can't read or upload a file name in php after moving to web server

我正在嘗試使用php上傳文件,並且我創建的代碼在我的本地主機上可以正常運行,但是,上傳到Web服務器后,它認為表單上的文件名為空,甚至無法讀取。 這是我創建的代碼。 它將上傳的文件名讀取為空白。 請幫忙。

<form action="registerSchool.php" method="post" enctype="multipart/form-data" name="form1">

                <input type="text" name="schoolName" id="name" placeholder="Name of School" />

                <input type="text" name="schoolAddr" id="Address" placeholder="School Address" />

                <input type="text" name="schooluri" id="uri" placeholder="School Home Page URL" />

                <label for="logo">Upload School logo: </label><input name="logo" type="file" id="logo" />

                <input type="text" name="superAdminUser" id="Admin_username" placeholder="Super Admin UserName" />

                <input type="password" name="superAdminPass" id="Admin_Password" placeholder="Super Admin Password" />

                <input type="password" name="superAdminPass2" placeholder="Enter Password Again" />

                <input type="submit" name="Submit" class="button button-small align_right" value="Create Institution" /><td>

    </form>

<?php
session_start();
// create short variable names
$schoolName = $_POST['schoolName'];
$schoolAddr = $_POST['schoolAddr'];
$schooluri = $_POST['schooluri'];
$superAdminUser = $_POST['superAdminUser'];
$superAdminPass = $_POST['superAdminPass'];
$superAdminPass2 = $_POST['superAdminPass2'];

$logo = mysql_real_escape_string($_FILES['logo']['name']);

//This is the directory where images will be saved
$target = "resources/";
$target = $target . basename( $_FILES['logo']['name']);

//check if the fields are filled
if(empty($schoolName) || empty($schoolAddr) || empty($superAdminUser) || empty($superAdminPass) || empty($superAdminPass2) || empty($schooluri))
{
    //redirect
    header('Location: RegisterNewSchool.php?failure=1'); 
    die;
}

if(empty($logo))
{
    //redirect
    header('Location: RegisterNewSchool.php?failure4=1'); 
    die;
}

//check if admin passwords match
if($superAdminPass != $superAdminPass2)
{
    //redirect
    header('Location: RegisterNewSchool.php?failure1=1'); 
    die;
}

if(!get_magic_quotes_gpc())
{
    $schoolName = mysql_real_escape_string($schoolName);
    $schoolAddr = mysql_real_escape_string($schoolAddr);
    $schooluri = mysql_real_escape_string($schooluri);
    $superAdminUser = mysql_real_escape_string($superAdminUser);
    $superAdminPass = mysql_real_escape_string($superAdminPass);
    $superAdminPass2 = mysql_real_escape_string($superAdminPass2);
}


//verify if logo is cool
if($_FILES["logo"]["size"] < 500000) {
    //verify if logo has uploaded to server
    if(move_uploaded_file($_FILES['logo']['tmp_name'], $target)){            
        //connect to the database
        include('dbconnect.php');

        //query the database
        $query5 = "CREATE TABLE studentDetails
                    ( student_id int(11) not null auto_increment primary key,
                    registration_number char(50) not null,
                    surname char(200),
                    othernames char(200),
                    student_pass char(50)
                    )";
        $query = "CREATE TABLE schoolDetails
                    ( school_id int(11) not null auto_increment primary key,
                    school_name char(50) not null,
                    school_addr char(200),
                    schooluri char(150),
                    school_logo varchar(50)
                    )";
        $query2 = "CREATE TABLE adminDetails( admin_id int(11) not null auto_increment primary key,
                    admin_type char(20) not null,
                    admin_name char(50),
                    admin_pass char(50)
                    )";
        $query3 = "INSERT INTO schoolDetails(school_name,school_addr,schooluri,school_logo)
                VALUES('".$schoolName."','".$schoolAddr."','".$schooluri."','".$logo."')";
        $query4 = "INSERT INTO adminDetails(admin_type,admin_name,admin_pass)
                VALUES('super','".$superAdminUser."','".$superAdminPass."')";

        $result = $db->query($query);
        $result2 = $db->query($query2);
        $result3 = $db->query($query3);
        $result4 = $db->query($query4);
        $result5 = $db->query($query5);
        if ($result5) {
            echo 'query success';
        } else {
            echo 'An error occurred. '. mysqli_error($db);
        }

        //disconnect from the database
        include('dbdisconnect.php');
        //redirect
        $_SESSION['valid_admin'] = $superAdminUser;
        header('Location: AdminPanel.php?success=1'); 
        die;

    }
    else {
        //redirect
        header('Location: RegisterNewSchool.php?failure2=1'); 
        die;
    }
}
else {
        //redirect
        header('Location: RegisterNewSchool.php?failure3=1'); 
        die;
}

?>

您是否有權在服務器上寫? 可能只是您需要chmod文件夾

我認為你的代碼應該工作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM