Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Bilder Upload mit automatischer Größenanpassung funktioniert nicht

Mitglied: 46356

46356 (Level 2)

04.11.2007, aktualisiert 12:53 Uhr, 3785 Aufrufe, 4 Kommentare

Guten Tag!

Ich habe hier ein PHP Script, der auch funktioniert, wenn ich die Datei genau angebe (bla.jpg). Dann wird diese Datei auf eine bestimmte Größe angepasst und in einem Ordner gespeichert.
Nun habe ich versucht ein Upload Formular dazu zu schreiben. Leider funkionierts dann nicht mehr!

Hier mein Code (Datei heißt upload3.php):

01.
<form action="upload3.php" method="post" enctype="multipart/form-data">  
02.
<input type="file" name="datei"><br> 
03.
<input type="submit" value="Hochladen">  
04.
</form> 
05.
 
06.
<?php 
07.
$Grafikdatei = $_POST['datei']; 
08.
$Bilddaten = getimagesize($Grafikdatei); 
09.
 
10.
$OriginalBreite = $Bilddaten[0]; 
11.
$OriginalHoehe = $Bilddaten[1]; 
12.
$ThumbnailBreite = 123; 
13.
 
14.
if($OriginalBreite < $ThumbnailBreite) 
15.
16.
    $ThumbnailBreite=$OriginalBreite; 
17.
18.
 
19.
$Skalierungsfaktor = $OriginalBreite/$ThumbnailBreite; 
20.
$ThumbnailHoehe = intval($OriginalHoehe/$Skalierungsfaktor); 
21.
 
22.
if($Bilddaten[2] == 1) 
23.
24.
    $Originalgrafik = ImageCreateFromGIF($Grafikdatei); 
25.
    $Thumbnailgrafik = ImageCreateTrueColor($ThumbnailBreite, $ThumbnailHoehe); 
26.
    ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $ThumbnailBreite, $ThumbnailHoehe, $OriginalBreite, $OriginalHoehe); 
27.
    ImageGIF($Thumbnailgrafik, "thumb_".$Grafikdatei); 
28.
29.
elseif($Bilddaten[2] == 2) 
30.
31.
    $Originalgrafik = ImageCreateFromJPEG($Grafikdatei); 
32.
    $Thumbnailgrafik = ImageCreateTrueColor($ThumbnailBreite, $ThumbnailHoehe); 
33.
    ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $ThumbnailBreite, $ThumbnailHoehe, $OriginalBreite, $OriginalHoehe); 
34.
    ImageJPEG($Thumbnailgrafik, "thumb_".$Grafikdatei); 
35.
36.
elseif($Bilddaten[2] == 3) 
37.
38.
    $Originalgrafik = ImageCreateFromPNG($Grafikdatei); 
39.
    $Thumbnailgrafik = ImageCreateTrueColor($ThumbnailBreite, $ThumbnailHoehe); 
40.
    ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $ThumbnailBreite, $ThumbnailHoehe, $OriginalBreite, $OriginalHoehe); 
41.
    ImagePNG($Thumbnailgrafik, "thumb_".$Grafikdatei); 
42.
43.
 
44.
echo"<img src=\"thumb_", 
45.
    $Grafikdatei, 
46.
    "\">"; 
47.
 
48.
?> 
49.
</form> 
50.
</body> 
51.
</html> 
52.
 
Was ist da falsch?

Und hat vielleicht noch jemand eine Idee, wieso schon vor dem Absenden der Datei eine Fehlermeldung kommt oder wie ich diese wegbekomme?

01.
Warning: Division by zero in /usr/export/www/vhosts/funnetwork/hosting/browserfish/test/upload3.php on line 19 
02.
 
03.
Warning: Division by zero in /usr/export/www/vhosts/funnetwork/hosting/browserfish/test/upload3.php on line 20
Danke und einen schönen Sonntag, Alexander Breuss
Mitglied: Dani
04.11.2007 um 11:46 Uhr
Hallo Alex,
die Fehlermeldung beschreibt dein Problem doch schon. Zeile 19 und 20 können nicht geparst werden, weil eine Division mit 0 nicht möglich ist.

Zeile 19 und 20:
01.
$Skalierungsfaktor = $OriginalBreite/$ThumbnailBreite; 
02.
$ThumbnailHoehe = intval($OriginalHoehe/$Skalierungsfaktor);
Einfach alle Variablen mit "Echo" mal ausgeben. Dann siehst du ja, welche es ist.


Grüße
Dani
Bitte warten ..
Mitglied: 46356
04.11.2007 um 11:52 Uhr
Hallo Dani

Danke für deine Antwort!
Aber wieso kommt der Fehler bevor ich die Daten überhaupt absende?

Alex
Bitte warten ..
Mitglied: Dani
04.11.2007 um 12:26 Uhr
Tja....eigentlich solltest du das Wissen, wenn du PHP programmierst. Den Grund kannst du hier nachlesen.


Grüße
Dani
Bitte warten ..
Mitglied: EvilMoe
04.11.2007 um 12:53 Uhr
Weil getimagesize doch erst die Daten auslesen kann wenn das Formular abgesendet wurde. Vorher existieren die Variablen nicht und es kommt zu den Fehler. Funktionsweise siehst du bei Danis Link.

EDIT: Bau ein isset($_POST['datei']) ein und packe alles hinter die Abfrage rein dann gibts keine Probleme mehr ;)
Bitte warten ..
Ähnliche Inhalte
PHP

Bilder upload, automatisch resizen und URL in PHPBB einfügen

Frage von HenerePHP

Hallo zusammen, ich betreibe ja ein Motorradforum welches in Kürze auf PHPBB umziehen soll. Wir hatten bis jetzt unter ...

Administrator.de Feedback

Diskussionsrunde: Bilder-Upload innerhalb eines Kommentars

gelöst Frage von FrankAdministrator.de Feedback26 Kommentare

Hallo Administrator User, auch hier brauche ich etwas Feedback von Euch. Ich will in der kommenden Woche den Bilder-Upload ...

Windows Tools

Automatischer FTP-Upload ohne angemeldeten Benutzer

Frage von SarekHLWindows Tools5 Kommentare

Hallo zusammen, kennt jemand ein Programm wie den FTP-Watchdog, welches als Dienst konzipiert ist? Ich möchte auf einem Server ...

Netzwerkprotokolle

Filezilla bat Upload funktioniert nicht CMD

gelöst Frage von iAmbrickstaNetzwerkprotokolle10 Kommentare

Hallo Community, glaube ich stehe echt mega auf dem Schlauch ! habe mir mal ne kleine Test FTP Umgebung ...

Neue Wissensbeiträge
Server-Hardware
HP iLO ist gefährdet (iLO 4))
Tipp von AlFalcone vor 6 StundenServer-Hardware

Gemäss Twitter und Heise gibt es eine Angriffsmöglichkeit auf iLO Quelle: iLO ist gefährdet

CMS
Erneut kritische Zero-Day-Lücke in Drupal
Tipp von Reini82 vor 15 StundenCMS

Laut einem Bericht auf t3n gibt es eine Schwere Sicherheitslücke in Drupal die auch schon ausgenutzt wird. Betroffen sind ...

Sicherheit

MikroTik-Router patchen, Schwachstelle wird ausgenutzt

Information von kgborn vor 1 TagSicherheit

Am 23. April 2018 wurde von Mikrotik ein Security Advisory herausgegeben, welches auf eine Schwachstelle im RouterOS hinwies. Mikrotik ...

Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 1 TagWindows 101 Kommentar

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

Heiß diskutierte Inhalte
Windows Server
Alten DC entfernen
gelöst Frage von smartinoWindows Server27 Kommentare

Hallo zusammen, ich habe hier eine Umgebung übernommen und erstmal einen DCDIAG gemacht. Dabei fällt auf, daß eine ganze ...

Ausbildung
Wie gelingt ein guter Einstieg in die FiSi-Ausbildung? (Umschulung)
Frage von SiAnKoAusbildung27 Kommentare

Schönen guten Tag, ich bin SiAnKo und habe seit dem 1.04.2018 eine Umschulung als FiSi angefangen. Ich möchte natürlich ...

Batch & Shell
Mit Powershell den Inhalt einer Excel mit einer Text Datei abgleichen
gelöst Frage von Bommi1961Batch & Shell21 Kommentare

Hallo zusammen, ich muss den Inhalt einer Excel Datei (Mappe1) mit dem Daten einer Text Datei abgleichen. Die Daten ...

Router & Routing
Subnetzmaske vergrößern
gelöst Frage von groovesurferRouter & Routing18 Kommentare

Hallo, hat jemand schonmal getestet was passiert, wenn man die Subnetzmaske bei laufendem Betrieb (wenn user im Netzwerk verbunden ...