Hallo,
Ich wollte gestern Profil Bilder in meine Page einbauen dabei ist mir aufgefallen das keine Upload-systeme funktionieren wie kann ich dies nun anstellen ?
Uploads sind nicht gestatte aber Profil Bilder aber schon …
Danke für die antworten
Hallo,
Ich wollte gestern Profil Bilder in meine Page einbauen dabei ist mir aufgefallen das keine Upload-systeme funktionieren wie kann ich dies nun anstellen ?
Uploads sind nicht gestatte aber Profil Bilder aber schon …
Danke für die antworten
danke für die frage, aber ohne infos wie zb einem link (es sind die kleinen dinge im leben, nicht wahr? ) kann man dir leider nicht helfen.
File/Imagehosting ist nicht gestattet. Aber: Ich denke, wenn du eine 0815-Avatar-Uploadfunktion wie in jedem Forum [wie z.B. auch hier in Gebrauch] bastelst, wird dich niemand fressen. Entscheidend ist, was damit hochgeladen wird/werden kann.
Ich lass mich auch gerne korrigieren, falls ich falsch liege.
Mfg
Ich denke nen 0815 uploadsystem würd nicht gehen jedenfals funktionirt kein uploadsystem der button von dem datei auswahldingen siht auch ganz komisch aus
Denke mal die lieben herren von bplace müsten mir das freischalten oder ?
Und man könnte einstellen das man alles hochladen kann habs aber gemacht das es nur mit bildern geht
Ich glaub nähmlich nichtmehr das ich was falsch escriptet habe
Da gibt es nichts freizuschalten, weil es gar nicht gesperrt ist.
Wenn da etwas nicht funktioniert, liegt es wahrscheinlich eher an einem fehlerhaften Script.
entweder bin ich dumm oder das ging an dem anderen pc einfach nicht =D
naja trotzdem danke =)
ok jetz geht es nicht mehr -.-
Liegt wohgl auch drann das ich noch anfänger bin und es mir mit vorlagen bei bringe
[code] echo “
}
else if($_REQUEST['buttonupload'] == Ändern)
{
print'<p>Datei wählen:</p>';
echo "<form action=\"/?page=".$_GET['page']."&side=profil&id=".$_GET['id']."\" method=\"post\" enctype=\"multipart/form-data\">";
print' <input type="file" name="datei"><br><br>
<input type="hidden" name="step" value="upload"><br><br>
<input type="submit" value="Datei hochladen">
</form>
';
}
if($_REQUEST['step'] == upload)
{
if ($_FILES['datei']['error'])
{
$error = "<p>Folgende(r) Fehler ist aufgetreten:</p>";
$error .= "<li>Allgemeiner Fehler</li>";
}
if ($_FILES['datei']['size'] > 5000000)
{
$error = "<p>Folgende(r) Fehler ist aufgetreten:</p>";
$error .= "<li>Datei zu groß</li>";
}
$name = $_FILES["datei"]["name"];
$type = strrchr($name,'.');
echo $name.$type;
if ($type != ".jpg"&&$type != ".JPG"&&$type != ".png")
{
$error = "<p>Folgende(r) Fehler ist aufgetreten:</p>";
$error .= "<li>Falsches Dateiformat</li>";
$error .= "$type ist falsch";
}
if(isset($error)){echo $error;}
else
{
if (file_exists("images/user/".$_GET['id'].".png"))imagedestroy ("images/user/".$_GET['id'].".png");
$filename = $_GET['id'].$type;
move_uploaded_file($_FILES['datei']['tmp_name'],"images/user/".$filename);
verkleinern_pic($filename);
echo $name." wurde hochgeladen";
if (file_exists("images/user/".$_GET['id'].".png"))echo "<img border=0 src=\"images/user/".$_GET['id'].".png\"/>";
else echo "No picture";
}
}
echo "</label></td></tr>";[/code]
[code]function verkleinern_pic($file)
{
$target_width = 800;
$target_height = 600;
if (ob_get_level() == 0) ob_start();
$destination_path = './images/user/';
$target_path = $destination_path . basename($file);
$extension = pathinfo($target_path);
$allowed_ext = "jpg, gif, png, bmp, jpeg, JPG";
$extension = $extension[extension];
$allowed_paths = explode(", ", $allowed_ext);
$ok = 0;
for($i = 0; $i < count($allowed_paths); $i++)
{
if ($allowed_paths[$i] == "$extension")
{
$ok = "1";
}
}
if ($ok == "1")
{
if($extension == "jpg" || $extension == "jpeg" || $extension == "JPG")$tmp_image=imagecreatefromjpeg($target_path);
if($extension == "png")$tmp_image=imagecreatefrompng($target_path);
if($extension == "gif")$tmp_image=imagecreatefromgif($target_path);
$width = imagesx($tmp_image);
$height = imagesy($tmp_image);
$imgratio = ($width / $height);
if ($imgratio>1)
{
$new_width = $target_width;
$new_height = ($target_width / $imgratio);
}
else
{
$new_height = $target_height;
$new_width = ($target_height * $imgratio);
}
$new_image = imagecreatetruecolor($new_width,$new_height);
ImageCopyResized($new_image, $tmp_image,0,0,0,0, $new_width, $new_height, $width, $height);
imagejpeg($new_image, $target_path);
$image_buffer = ob_get_contents();
ImageDestroy($new_image);
ImageDestroy($tmp_image);
echo "verkleinert zu $new_width x $new_height <br> \n";
echo str_pad('',4096)."\n";
ob_flush();
flush();
}
echo "Done.";
ob_end_flush();
}
[/code]
er sagt mir immer :Folgende® Fehler ist aufgetreten:Falsches Dateiformat ist falsch
könnt ihr mir helfen ? =) möglicherweise auch verbessern
Und kann man eigentlich auch die bilder in die MySQL daten bank speichern ?
Ziemliche Schusterei. Grundlegendes: Mittendurch erlaubst du jpg und png, am Ende soll aber png angezeigt werden. Soweit kommt es jedoch noch nicht. Welche Datei versuchst du denn hochzuladen?
Also, schwere Mängel:
$_POST['buttonupload'] == Ändern
Bitte Strings in Anführungsstrichen. Sonst funktioniert da gar nix.
$_POST['buttonupload'] == "Ändern"
4)Irgendwas kann mit dem Transfer nicht stimmen, vermutlich ein Folgefehler, weil bei echo $name.$type; ja auch nichts ausgegeben wird. Beseitige erstmal die groben Fehler.
Bilder gehören nicht in die Datenbank. Ich würde dir dringend raten, dir Grundlagen anzueignen, sonst wird das nichts.
PS: Vom Sicherheitstechnischen Aspekt fange ich jetzt nicht erst an…
Dan erstell ich den tag gleich =P
Und strings in anfürungszeichen $_POST['buttonupload'] == "Ändern"
hab ich nirgens in anfürungs zeichen unf funtz wunderbar =)
und ja ich gestate bmp jpg und png den die funktion ändert doch das format (oder ?)
Jedenfalls was geschehen soll:
[list=]Bilduploaden
Verkleinern(pixel)
Format ändern
Umbennen
in den ortner schieben[/list]
aber denke das hab cih soweit alles
$name = $_FILES["datei"]["name"];
$type = strrchr($name,'.');
echo $name.$type;
if ($type != ".jpg"&&$type != ".JPG"&&$type != ".png")
{
$error = "<p>Folgende(r) Fehler ist aufgetreten:</p>";
$error .= "<li>Falsches Dateiformat</li>";
$error .= "$type ist falsch";
}
dies kommt jedesmal =(
und dies wird nichtmal ausgefürt jedenfalls steht dort nichts
[quote=„Vitamin[X]“]
hab ich nirgens in anfürungs zeichen unf funtz wunderbar =)
[/quote]
Achso, du hattest da oben was geschrieben von irgendwas geht nicht, muss mich wohl verlesen haben
Meines Erachtens erzeugt die Funktion ein jpeg, speichert es aber nicht. Kenne mich da nicht so aus. Ist auch egal, soweit kommt es nämlich gar nicht.
Wie heißt denn genau die Datei, die du hochzuladen versuchst?
Nach 3 stunden rum gewärke hab ich es entlich geschaft ;D
Jedenfals geht es jetz mit
Upload
Umbennen
Verkleinern
und Format ändern
hätt gern ne einwilligung von bplaced das es auch gut ist und nicht legal ,da ja eig recht große dateien hochgeladen werden können
Die Größe kannst und solltest du ja auch beschränken
Zumindest wenns um nen Avatar Upload geht^^ Ansonsten gehts in Ordnung Wird ja immerhin auch nicht dauerhaft gemacht sondern 1x pro User bzw. eventuell mehrfach wenn diese ihren Avatar wieder ändern.
Hatte das meine ich auf 5 MB beschrängt und das bild wird im nachinein ja auch verkleinert und das alte natürlich gelöscht
hi,
auf 5mb kannst es so weit ich weiß eh nicht beschränken da schon ne beschränkung auf 2 mb upload liegt.
lg
Wäh?
[quote=“PHP Info”]upload_max_filesize 128M
post_max_size 132M[/quote]
Dennoch halte ich 5MB nicht für Sinnvoll… das Bild wäre ja dann sonst was HD^^ Das dann zu nem 100x100 Profil Bild zu stopfen ist recht Sinnfrei^^
Mit Bildgröße meinte ich übrigens die Bildgröße und nicht die Dateigröße
Wenn Profilbilder ne Größe von 120x120 haben, würde ich vielleicht maximal 512x512 erlauben welches dann verkleinert wird.
@white.tiger: Stimmte des von mir nicht mit den 2 MB? oder wie soll man des 128M interpretieren? lg
Es liegt keine Beschränkung bei 2 MB, sondern bei 128.
Hi,
MB oder ? micht hat des alleinige M irritiert. XD
thx
lg
ja.