Geschrieben von newwarrior am 16.04.2006, 17:45

Hi,

da ich in letzter Zeit immer mehr gelesen habe das Leute ein Uploadscript suchen, werde ich jetzt ein Tutorial schreiben, wo ich erkläre wie man ein solches Script am besten programmiert.
Das besondere an diesem Script ist, dass es nicht nur die Bilder hochladen kann, sondern gleichzeitig auch sie noch in einen anderen Ordner schieben kann und auch einen anderen Namen geben könnt.

Fangen wie mal an:

Als erstes brauchen wir ein Formular, wo der User oder ihr das Bild oder die Datei auswählen kann.
Ein solches Formular könnte so aussehen:


<html>
<head>
<title>Test</title>
</head>
<body>
<form action="check.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="text" name="name">
<input type="submit" name="senden">
</form>
</body>
</html>

Wir haben hier ein Durchsuchen Button und ein ein Button womit man das Formular abschicken kann.
Den Teil des Script nenne ich mal die index.php Datei.
Im folgende Teil:

<input type="text" name="name">

Könnt ihr den neuen Namen des Bildes angeben.
So jetzt kommen wir zum eigentlich Teil des Scripts. Jetzt kommt eine Seite die wir check.php nennen.
die sieht ungefähr so aus:

<?php
error_reporting(E_ALL);

if($_FILES['file']['type'] == 'image/gif' OR $_FILES['file']['type'] == 'image/jpg' OR $_FILES['file']['type'] == 'image/jpeg' OR $_FILES['file']['type'] == 'image/pjpeg')
{
$uploaddir = 'htdocs/';

if($_FILES['file']['type'] == 'image/gif')
{
$name = $_POST['name'].'.gif';
}
if($_FILES['file']['type'] == 'image/pjpeg')
{
$name = $_POST['name'].'.jpeg';
}
if($_FILES['file']['type'] == 'image/jpeg')
{
$name = $_POST['name'].'.jpeg';
}
if($_FILES['file']['type'] == 'image/jpg')
{
$name = $_POST['name'].'.jpg';
}
print "<pre>";
if (move_uploaded_file($_FILES['file']['tmp_name'], $uploaddir . $name)) {
echo'<img src="'.$name.'">';
} else {
print "Nichts hat geklappt\n";
}
}
else
{
echo 'Es dürfen nur Bilddateien mit den Formaten jpeg, jpg und gif hochgeldaen werden.';
}
?>

Dieser Teil des Scripts:


if($_FILES['file']['type'] == 'image/gif' OR $_FILES['file']['type'] == 'image/jpg' OR $_FILES['file']['type'] == 'image/jpeg' OR $_FILES['file']['type'] == 'image/pjpeg')
{

Überprüft ob die Datei auch wirklich ein Bild ist, wenn ja geht es weiter wenn nicht eird folgender Text ausgeben:

Es dürfen nur Bilddateien mit den Formaten jpeg, jpg und gif hochgeldaen werden.

Hier gebt ihr den Ordner an, wo das Bild hin soll:

$uploaddir = 'htdocs/';

Naja und hier wird das Bild umgenannt:

if($_FILES['file']['type'] == 'image/gif')
{
$name = $_POST['name'].'.gif';
}
if($_FILES['file']['type'] == 'image/pjpeg')
{
$name = $_POST['name'].'.jpeg';
}
if($_FILES['file']['type'] == 'image/jpeg')
{
$name = $_POST['name'].'.jpeg';
}
if($_FILES['file']['type'] == 'image/jpg')
{
$name = $_POST['name'].'.jpg';
}

Und jetzt kommt das wichtigste, wir wollen ja auch noch die Datei verschieben:

if (move_uploaded_file($_FILES['file']['tmp_name'], $uploaddir . $name)) {
echo'<img src="'.$name.'">';

Nach dem erfolgreichen verschieben der Datei wird das Bild nochmal angeziegt.
Wunderbar, jetzt habt ihr es wirklich geschaft, ihr habt einen Uploadscript der den Namen des Bildes ändert und es in einen neuen Ordner verschiebt. Ist doch gar nicht so schlecht.

BITTE ACHTET DRAUF DEN ORDNER htdocs IN DEM VERZEICHNIS ZUERSTELLEN WO DAS SCRIPT LIEGT!!!

Bei Fragen oder Problemen wendet euch an mich per PN.
Danke

Bewertung Anzahl
6
87,1 %
27 Bewertungen
5
9,7 %
3 Bewertungen
1
3,2 %
1 Bewertungen