mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 28.03.2024 16:22 Benutzername: Passwort: Auto-Login

Thema: Fehler beim BildUpload vom 02.03.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Fehler beim BildUpload
Autor Nachricht
johnnyvegas
Threadersteller

Dabei seit: 28.02.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst So 02.03.2008 17:32
Titel

Fehler beim BildUpload

Antworten mit Zitat Zum Seitenanfang

Hallo zusammen,
darf ich um Euren Rat bitten Lächel

Habe ein Script für einen BildUpload erhalten und diesen angepasst.
Dazu habe ich ein Formular erstellt, mit den Feldern "titel, text, link_pdf, link_web, bilddatei".
Alle Informationen sollen in meine mySQL DB geschrieben. Das Script führt dies auch schön aus und die Felddaten werden in die DB eingetragen.
Nur wird leider das Bild nicht im Verzeichnis "../bilderupload/" abgelegt und auch der Dateiname vom Bild wird nicht in die DB abgespeichert.

Code:


$titel = $_POST["titel"];
$text = $_POST["text"];
$link_pdf = $_POST["link_pdf"];
$link_web = $_POST["link_web"];
$bilddatei = $_POST["bilddatei"];

$extlimit = "yes";
$limitedext = array(".gif",".jpg",".png",".jpeg");
$sizelimit = "yes";
$sizebytes = "100000";
if($senden){
if($bilddatei!= "") {
if (($sizelimit == "yes") && ($bilddatei_size > $sizebytes)) {
echo "Die Bilddateiname ist zu gross, sie darf mamimal $sizebytes bytes sein.";
}
$ext = strrchr($bilddatei_name,'.');
if (($extlimit == "yes") && (!in_array($ext,$limitedext))) {
echo "Die Bilddateiname hat nicht die richtige Endung.";
}

elseif (file_exists("../bilderupload/$bilddatei_name")) {
echo "Die Bilddateiname existiert bereit. Bitte ändere deine Bilddateiname und versuche es nochmal.";
}

else{
copy($bilddatei,"../bilderupload/$bilddatei_name");
} }//if($bilddatei!= "") {
}//if($senden)



$link_bild=$bilddatei_name;

mysql_query("INSERT INTO news (titel,text,link_pdf,link_web,link_bild) VALUES('".$titel."','".$text."','".$link_pdf."','".$link_web."','".$link_bild."')") or die(mysql_error());



Wo liegt hier der Hund begraben??

Optional: Wenn jemand noch ganz ganz einfach einen Rat weiss, wie ich die Bilder proportional verkleinern kann auf 130px x *, wäre ich sehr dankbar Lächel

Vielen Dank im voraus
Grüsse
Johnny
  View user's profile Private Nachricht senden
gooodguy

Dabei seit: 22.08.2005
Ort: Paderborn
Alter: -
Geschlecht: Männlich
Verfasst So 02.03.2008 18:16
Titel

Antworten mit Zitat Zum Seitenanfang

- mach mal ein var_dump($_FILES)
- wo ist $senden definiert?
  View user's profile Private Nachricht senden
Anzeige
Anzeige
Joxa

Dabei seit: 06.10.2005
Ort: -
Alter: -
Geschlecht: -
Verfasst So 02.03.2008 19:44
Titel

Antworten mit Zitat Zum Seitenanfang

Ich würde auch darauf tippen das $senden nicht definiert ist und eigentlich
$_POST[senden] abgefragt werden sollte.

Zu dem verkleinern kannst du das relativ schnell mit den image-Funktionen unter php bewerkstelligen,
ich hab da glaube ich sogar noch einen fertigen Codeschnippsel hier irgendwo, aber erstmal sollte der upload
funktionieren.
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst So 02.03.2008 20:14
Titel

Antworten mit Zitat Zum Seitenanfang

Wo hast du denn eigentlich dieses alte Upload-Script ausgegraben?
Verwende kein copy() mehr, sondern nutze move_uploaded_file().

Außerdem scheint das Script anfällig für einen Angriff per SQL-Injection zu sein. Niemals darfst du Werte von außen ungeprüft und unbereinigt in deine Abfragen einbauen.
In mysql_real_escape_string() wäre das mindeste, was du anwenden solltest.

Und
Code:
or die(mysql_error());
ist im wirklich Gebrauch auch völlig ungeeignet. Dir würde bei einem Fehler zwar eine Fehlermeldung ausgegeben werden, aber danach wird das Script dann beendet, bevor der HTML-Code der Seite zu Ende geschrieben werden kann. Du erhälst damit nur ein halbes, invalides HTML-Dokument.
  View user's profile Private Nachricht senden
johnnyvegas
Threadersteller

Dabei seit: 28.02.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Sa 15.03.2008 23:51
Titel

Antworten mit Zitat Zum Seitenanfang

danke für die tipps. werde es versuchen.

@rob
das script habe ich von irgendjemandem mal gekriegt...ist aber schon ne weile her. bin eigentlich nicht so der programmierer und brauche php darum sehr selten. kannst du ein besseres/sichereres script empfehlen?
gruss
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst So 16.03.2008 02:20
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
kannst du ein besseres/sichereres script empfehlen?

Selber schreiben.
Wirf einen Blick in das PHP-Handbuch. Dort gibt es das Kapitel Steuerung von Dateiuploads. Dort findest du eigentlich alles, was du brauchst. Beispielscripte ebenfalls.
  View user's profile Private Nachricht senden
 
Ähnliche Themen Bildupload Problem
[PHP] Bildupload Problem
Ajax Bildupload
Script in PHP für Bildupload in Datenbank
menalto gallery frage zum bildupload
Perl-Bildupload (größe der Bilder)
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.