Php Просмотрите файл, затем введите его путь

Наткнулся на сеть, столкнувшись с трудностями в поиске образца для получения пути к файлу в просматриваемом файле. Некоторые из них я читал, что эта функция больше не работает больше из-за соображений безопасности. Любые идеи парней? Мне очень нужен образец. Я уже много раз пробовал.

В настоящее время у меня есть:

<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> 

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 ?> 

Использовать pathinfo () http://php.net/manual/en/function.pathinfo.php

Из соображений безопасности вы не можете получить полный путь к файлу. Спецификации W3C и RFC не упоминают, что полный путь к файлу должен быть доступен. Вы можете получить только имя файла ( document.getElementById("filefield_id").value например, возвращает имя).

Вероятно, причина в том, что если у вас есть возможность получить / изменить путь к файлу, можно также обойти кражу файлов у пользователей с помощью скрытых полей. Нижняя линия: это невозможно. Может быть, мы сможем помочь, если вы скажете нам, что именно вы пытаетесь сделать.