PHP/HTML - Anzeige der Hochgeladenen Dateien in der Liste
Ich versuche, erstellen Sie eine Datei-sharing-site, wo kann ich die Anzeige der links aller hochgeladenen Bilder. Sobald ein user-uploads einer Datei, werden Sie in der Lage, sowohl die Dateien, die bereits hochgeladen wurden, und eine weitere Datei Anhängen. Aber, ich habe zwei Probleme im moment:
1. Ich weiß nicht, wie neu-Anzeige der Haupt-Seite hochladen, sobald ein Benutzer lädt ein Bild hoch.
2. Ich weiß nicht, wie Sie dynamische links erstellen basierend auf den Dateien.
Hier ist der code, den ich bisher:
HTML/PHP
Datei-Sharing-Site
<body>
<h2>File-Sharing Site</h2>
<h3>Upload file</h3>
<form action="upload_file.php" method="post" enctype="multipart/form-data">
Search for file: <br />
<input type="file" name="file" id="file" />
<input type="submit" name="submit" value="Upload" />
</form>
</body>
</html>
PHP
<?php
$allowedExts = array("jpg", "jpeg", "gif", "png");
$extension = end(explode(".", $_FILES["file"]["name"]));
if((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 800000)
&& in_array($extension, $allowedExts))
{
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"];
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
}
else
{
echo "Invalid file";
}
?>
- Dein script öffnet Sie Ihre server insgesamt gefährden. Sie haben pathetisch-easy-to-bypass "Sicherheit". Ich schlage vor, du tötest diesen code und schauen Sie sich die VIELEN "sicheren upload" script-Fragen + Antworten auf dieser Seite.
- Dieser code ist nicht für kommerzielle Zwecke. Es wird keine öffentliche Datei und Sicherheit kommen wird, für andere Dinge. Für jetzt, ich brauche, um herauszufinden, wie die zum erstellen einer dynamischen Liste in der Haupt-Datei, die basiert auf, was Los ist auf dem Datei-Upload-Skript.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie fügen Sie diese zu Ihrer Startseite die Anzeige der hochgeladenen Dateien:
Natürlich haben Sie die Umleitung zurück auf die Hauptseite, um die Liste der Dateien und evtl. mehr hochladen-Dateien. Oder ajax verwenden, um Dateien hochzuladen, so dass Sie nicht gezwungen sind, umleiten, zurück.
Benutzt habe ich fertige plugin um dies zu erreichen alle:
http://blueimp.github.com/jQuery-File-Upload/
1) Verwenden Sie Header-Funktion
header('Location: ... ');
für redirect user to main Seite hochladen2) Sie brauchen, um zu verwenden *sql-Lösung zum speichern von Datei-links und zeigt Sie an.
2a) Geben Sie eindeutige Dateinamen, um alle hochgeladenen Dateien(ich.e-md5($Datei['name'])
Können Sie Ajax Datei upload.
Upload mit ajax, und dann wieder Datei-Pfad als Antwort... Dann drucken Sie einfach diese Antwort als link auf der Seite (in ein paar div -, Feld... )