如何在上传图片后向用户显示网址

时间:2016-12-19 04:52:01

标签: php forms upload

我正在寻找一种方式,当用户在PHP中上传图像时,它会向他们显示文件的URL。

我当前的upload.php如下:

<?php
if(!empty($_FILES)){
	
	//database configuration
	$dbHost = 'localhost';
	$dbUsername = 'root';
	$dbPassword = '';
	$dbName = 'codexworld';
	//connect with the database
	$conn = new mysqli($dbHost, $dbUsername, $dbPassword, $dbName);
	if($mysqli->connect_errno){
		echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
	}
	
	$targetDir = "http://wotm8.net/";
	$fileName = $_FILES['file']['name'];
	$targetFile = $targetDir.$fileName;
	if(move_uploaded_file($_FILES['file']['tmp_name'],$targetFile)){
		//insert file information into db table
		$conn->query("INSERT INTO files (file_name, uploaded) VALUES('".$fileName."','".date("Y-m-d H:i:s")."')");
	}
	
}
?>  

忽略数据库。我不用那个 如果您需要索引文件或其他任何内容,请询问。

HTML PAGE

<!DOCTYPE html> <html> <head><meta http-equiv="Content-Type" content="text/html; charset=gb18030"> 
    
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta name="google-site-verification" content="_wLD3KO_vuO5czv-n-j9YrXxO3OtQuGc6C51vOaRHMU" />
    <title>wotm8.net 路 File Hosting</title>
    <link rel="stylesheet" type="text/css" href="css/dropzone.css" />
    <script type="text/javascript" src="js/dropzone.js"></script>
    <link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
    <link rel="stylesheet" href="build.css">
</head>

<body>
    <div class="container">
        <div class="jumbotron">
	       <h1 id="logo">wotm8.net</h1>
	       <p class="lead">Max upload size is 75MiB, read the <a href="faq.php">FAQ</a></p>
            <noscript>
                <p class="alert alert-error"><strong>Enable JavaScript</strong> you autist neckbeard, it's not gonna hurt you</p>
            </noscript>
            <p id="no-file-api" class="alert alert-error"><strong>Your browser is shit.</strong> Install the latest<a href="http://firefox.com/">Firefox</a> or <a href="http://chrome.google.com/">Botnet</a> and come back &lt;3</p>
	<div class="fileUpload btn btn-primary">
    <form action="upload.php" class="dropzone" data-max-size="75MiB">
   
</div>
    </form>
            <ul id="upload-filelist"></ul>
	    <audio id="sickerMeme" src="meme.mp3" />
	    <script>
		var i = 0, text;
		var str = "Dude, that's a sick meme.";
		function start(){
//			document.getElementById("sickerMeme").play();type();
		}
		/* Credits: https://jsfiddle.net/creed88/VG8MJ/1/ */

		function type(){
			text = str.slice(0, ++i);
			if (text === str) return;
			document.getElementById('logo').innerHTML = text;
			setTimeout(type, 80);
		}
	    </script>
        </div>
	<!-- Leo5gg lol -->
	        <nav>
            <ul>
                <li><a href="//www.wotm8.net">Index</a></li>
                <li><a href="faq.php">FAQ</a></li>
                <li><a href="contact.php">Contact</a></li>
               </ul>
        </nav>
        <script src="main.js"></script>
    </div>
</body>    
</html>

2 个答案:

答案 0 :(得分:0)

我认为你的上传目录是$ targetFile

您可以回复它或以您认为安全的任何方式返回

插入数据库之后

echo $targetFile;

答案 1 :(得分:-1)

编辑

您的目标目录应该是绝对路径,而不是网站链接,应该是/ var / www / folder /

我怀疑您的上传是否适用于您发布的示例。

设法成功上传后,只需回显您的域+相关文件夹(如果有)+文件名。