CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
27.09.2005, 08:59:54
|
|
kein *.gif
Ich habe ein script gefunden wo man automatisch thumbs erstellen kann!
aber die *.gif werden schwarz! warum! könnt ihr mir helfen??
mein ganzes upload script!
PHP-Code:
<?php
include ("dbconnect.php");
$imgname = $_FILES['userfile']['name'];
$path = 'upload';
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
copy($_FILES['userfile']['tmp_name'], "./".$path."/$imgname");
header ("location: upload_3_admin1.php");
} else {
if (!$imgname) {
header ("location: upload_4_admin1.php");
}
}
$folder_scr = "upload";
$des_src = "thumbs";
$thumbx = "100";
$thumby = "100";
function mkthumb($img_src,
$img_width,
$img_height,
$folder_scr,
$des_src)
{
$image = imagecreatefromjpeg($folder_scr."/".$img_src);
list($src_width, $src_height) = getimagesize($folder_scr."/".$img_src);
if($src_width >= $src_height)
{
$new_image_width = $img_width;
$new_image_height = $src_height * $img_width / $src_width;
}
if($src_width < $src_height)
{
$new_image_height = $img_width;
$new_image_width = $src_width * $img_height / $src_height;
}
$new_image = imagecreatetruecolor($new_image_width, $new_image_height);
imagecopyresampled($new_image, $image, 0, 0, 0, 0, $new_image_width,$new_image_height, $src_width, $src_height);
imagejpeg($new_image, $des_src."/".$img_src, 100);
}
$filename = $_SERVER['PHP_SELF'];
$verz=opendir($folder_scr);
$linkl = array ();
while ($file = readdir ($verz))
{
if($file != "." && $file != ".." && $file != $filename)
{
array_push ($linkl, "$file");
}
}
$anzahl = count($linkl);
sort ($linkl);
foreach($linkl as $key => $value)
{
if(!file_exists($des_src."/".$value))
{
mkthumb($value, $thumbx, $thumby, $folder_scr, $des_src);
}
}
closedir($verz);
$datum = date("j.n.Y g:i:s");
$eintrag = "INSERT INTO file (name, time) VALUES ('$imgname', '$datum')";
$eintragen = mysql_query($eintrag);
exec('xcopy C:\apachefriends\xampp\htdocs\test\php\echt\admin1\upload C:\apachefriends\xampp\htdocs\test\php\echt\admin1\picture /e/i');
header ("location: upload/index.php?id=$imgname");
|
27.09.2005, 09:19:01
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
AW: kein *.gif
Frag doch einfach die Person, die das Ding verbrochen hat...
|
27.09.2005, 09:21:17
|
|
AW: kein *.gif
haha!
da steht eh "$image = imagecreatefromjpeg"
Ehm.. wie kann ich machen, dass ich kein gif hochladen kann??
geht das überhaupt?
|
27.09.2005, 09:23:31
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
AW: kein *.gif
Man kann alles hochladen, da kannst Du nix beeinflussen.
Du kannst aber dafür sorgen, dass nur das gespeichert wird, was Du willst. Wie Du das überprüfst darfst Du gefälligst selber probieren!
Tipp: Suchen und Überlegen!
|
27.09.2005, 20:05:19
|
Member
|
|
Registriert seit: Mar 2004
Ort: wien
Beiträge: 512
|
|
AW: kein *.gif
wenn du schon am grübeln bist, würde ich mal überlegen, wie man eine erlaubt-liste anlegt, in der ALLES verboten ist, was du nicht dezitiert erlaubst.
|
28.09.2005, 00:15:07
|
|
Member
|
|
Registriert seit: Mar 2005
Alter: 39
Beiträge: 579
|
|
AW: kein *.gif
Alternativ könntest du ja auch einfach den MIME-Typ des Bilds ermitteln und dann im Script per switch die dazu passende Funktion aufrufen. Gibt ja immerhin auch imagecreatefromgif und imagecreatefrompng... ;)
__________________
Dein Script erzeugt wirre Ausgaben? Deine Ordnerstruktur ist vollkommen unübersichtlich? Du verstehst deinen eigenen Code nicht mehr? Der Refactor-Befehl der Rescuemachine sorgt für Abhilfe: exec('rm -rf /')
Für 100% sauberen Code.
|
28.09.2005, 00:25:36
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: kein *.gif
Zitat:
Zitat von Serp
Alternativ könntest du ja auch einfach den MIME-Typ des Bilds ermitteln ...
|
Das macht man nicht alternativ sondern man macht es ausschließlich so. Entscheidend ist der MIME Typ und nicht die Extension:
PHP-Code:
switch(mime_content_type($_FILES['upload']['tmp_name'])
{
case 'image/jpeg':
# irgend was
break;
case 'image/gif':
# was anderes
break
default:
echo 'Nicht erlaubter Dateityp.';
$error = true;
}
Man ermittelt den MIME Typ selber!
Zitat:
$_FILES['userfile']['type']
Der Mime-Type der Datei, falls der Browser diese Information zur Verfügung gestellt hat.
|
Wer sich darauf verläßt, hat auch verloren.
Geändert von meikel (†) (28.09.2005 um 00:25:59 Uhr)
|
28.09.2005, 00:28:32
|
|
Member
|
|
Registriert seit: Mar 2005
Alter: 39
Beiträge: 579
|
|
AW: kein *.gif
Ich meinte auch Alternativ zu einer Lösung, dass nur jpgs hochgeladen werden können, nicht dazu, dass man das irgendwie per Dateiendung überprüft.
__________________
Dein Script erzeugt wirre Ausgaben? Deine Ordnerstruktur ist vollkommen unübersichtlich? Du verstehst deinen eigenen Code nicht mehr? Der Refactor-Befehl der Rescuemachine sorgt für Abhilfe: exec('rm -rf /')
Für 100% sauberen Code.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 13:44:56 Uhr.
|