PHP浏览文件,然后获取它的路径 [英] Php Browse a file then get its path

查看:76
本文介绍了PHP浏览文件,然后获取它的路径的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在网络上磕磕绊绊,难以找到获取浏览文件的文件路径的示例。其中一些人认为由于安全原因,该功能不再适用。任何想法家伙?我非常需要一个样本。我已经尝试了很多次。



目前我有:

 < HTML> 

< body>


< form method =postaction =file.phpenctype =multipart / form-data>

< input type =radioname =typevalue =moodlerequired =required/> Moodle< br />
< input type =radioname =typevalue =bbrequired =required/>黑板< br />
< input type =filename =fileid =file/>< br />< br />

< input type =submitvalue =Submitname =submit/>

< / form>

< / body>

< / html>

file.php

 <?php 


$ filetype = $ _POST [type];




echo $ filetype;

回显上传:。 $ _FILES ['file'] ['name']。 < br />;
回显类型:。 $ _FILES [文件] [ tmp_name的值];

if($ _FILES ['file'] ['error']> 0)
{
echoError:。 $ _FILES [file] [error]。 < br />;
}
else
{
echoUpload:。 $ _FILES ['file'] ['name']。 < br />;
回显类型:。 $ _FILES ['file'] ['type']。 < br />;
回声大小:。 ($ _FILES ['file'] ['size'] / 1024)。 Kb< br />;
回声存储于:。 $ _FILES [文件] [ tmp_name的值];


$ b函数moodlezip($ zipfile){

echo< h1> MOODLE< / h1>。< br / >中;

$ moodle = new Moodle();
$ zip = zip_open($ zipfile);
$ ziparc =新ZipArchive;

$ b $ if($ zip)
{
while($ zip_entry = zip_read($ zip))
{

$ file = zip_entry_name($ zip_entry);

//回显名称:。 $文件。 < br />;

$ b $ if(strpos($ file,'course.xml')!== false){

if($ ziparc-> open($ zipfile )=== TRUE){

$ coursexml = new SimpleXMLElement($ ziparc-> getFromName($ file));

$ moodle-> getCourse($ coursexml);

$ ziparc-> close();


} else {
echo'failed';




$ b else if(strpos($ file,'forum.xml')!== false){

if($ ziparc-> open($ zipfile)=== TRUE){

$ topicxml = new SimpleXMLElement($ ziparc-> getFromName($ file));

$ moodle-> getTopic($ topicxml);

$ ziparc-> close();


} else {
echo'failed';






else if(strpos($ file,'lesson.xml')!= = $ false $)

if($ ziparc-> open($ zipfile)=== TRUE){

$ lessonxml = new SimpleXMLElement($ ziparc-> getFromName ($文件));

$ moodle-> getLessons($ lessonxml);

$ ziparc-> close();


} else {
echo'failed';
}


}



else if(strpos($ file,'quiz.xml')!= = $ false){

if($ ziparc-> open($ zipfile)=== TRUE){

$ quizxml = new SimpleXMLElement($ ziparc-> getFromName ($文件));

$ moodle-> getQuizzes($ quizxml);

$ ziparc-> close();


} else {
echo'failed';





$ b else if(strpos($ file,'questions.xml')!== false){

if($ ziparc-> open($ zipfile)=== TRUE){

$ questionsxml = new SimpleXMLElement($ ziparc-> getFromName($ file) );

$ moodle-> getQuestions($ questionsxml);

$ ziparc-> close();


} else {
echo'failed';
}


}


}

zip_close($ zip);
}

}

require_once'classes / backup.php';

$ connect = mysql_connect(localhost,root,);


if(!$ connect)
{
die('Could not connect:'。mysql_error());
}

mysql_close($ connect);


//表单上传循环文件夹输入提交,查找,bb,scorm
//班级管理员
?>


解决方案

使用pathinfo() http://php.net/manual/en/function.pathinfo.php


Been stumbling around the net having a difficulty finding a sample of getting a file path of a browsed file. Some of them I read that this function no longer works anymore due to security reasons. Any ideas guys? I badly need a sample. I already tried many times.

This is currently I have:

<html>

<body>


<form method="post" action="file.php" enctype="multipart/form-data">

<input type="radio" name="type" value="moodle" required="required" /> Moodle<br />
<input type="radio" name="type" value="bb" required="required" /> BlackBoard<br />
<input type="file" name="file" id="file" /><br /><br />

<input type="submit" value="Submit" name="submit" />

</form> 

</body>

</html>

the file.php

<?php


$filetype = $_POST["type"];




echo $filetype;

echo "Upload: " . $_FILES['file']['name'] . "<br />";
echo "Type: " . $_FILES['file']['tmp_name'];

if ($_FILES['file']['error'] > 0)
  {
  echo "Error: " . $_FILES["file"]["error"] . "<br />";
  }
else
  {
  echo "Upload: " . $_FILES['file']['name'] . "<br />";
  echo "Type: " . $_FILES['file']['type'] . "<br />";
  echo "Size: " . ($_FILES['file']['size'] / 1024) . " Kb<br />";
  echo "Stored in: " . $_FILES['file']['tmp_name'];
  }


function moodlezip($zipfile){

    echo "<h1>MOODLE</h1>"."<br />";

    $moodle = new Moodle();
    $zip = zip_open($zipfile);
    $ziparc = new ZipArchive;


    if ($zip)
    {
        while ($zip_entry = zip_read($zip))
        {

            $file = zip_entry_name($zip_entry);

            //echo "Name: " . $file . "<br />";


            if (strpos($file,'course.xml') !== false) {

                if ($ziparc->open($zipfile) === TRUE) {

                    $coursexml =  new SimpleXMLElement($ziparc->getFromName($file));

                    $moodle->getCourse($coursexml);

                    $ziparc->close();


                } else {
                    echo 'failed';
                }


            }

            else if (strpos($file,'forum.xml') !== false) {

                if ($ziparc->open($zipfile) === TRUE) {

                    $topicxml =  new SimpleXMLElement($ziparc->getFromName($file));

                    $moodle->getTopic($topicxml);

                    $ziparc->close();


                } else {
                    echo 'failed';
                }


            }



            else if (strpos($file,'lesson.xml') !== false) {

                if ($ziparc->open($zipfile) === TRUE) {

                    $lessonxml =  new SimpleXMLElement($ziparc->getFromName($file));

                    $moodle->getLessons($lessonxml);

                    $ziparc->close();


                } else {
                    echo 'failed';
                }


            }



            else if (strpos($file,'quiz.xml') !== false) {

                if ($ziparc->open($zipfile) === TRUE) {

                    $quizxml =  new SimpleXMLElement($ziparc->getFromName($file));

                    $moodle->getQuizzes($quizxml);

                    $ziparc->close();


                } else {
                    echo 'failed';
                }


            }


            else if (strpos($file,'questions.xml') !== false) {

                if ($ziparc->open($zipfile) === TRUE) {

                    $questionsxml =  new SimpleXMLElement($ziparc->getFromName($file));

                    $moodle->getQuestions($questionsxml);

                    $ziparc->close();


                } else {
                    echo 'failed';
                }


            }


        }

        zip_close($zip);
    }

}

require_once 'classes/backup.php';

$connect = mysql_connect("localhost","root","");


if (!$connect)
{
    die('Could not connect: ' . mysql_error());
}

mysql_close($connect);


//form upload loop folders input submit, find, bb, scorm
//class admin
?>

解决方案

Use pathinfo() http://php.net/manual/en/function.pathinfo.php

这篇关于PHP浏览文件,然后获取它的路径的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆