Problem mit PHP-Script und Upload auf Server

julchen

Erfahrenes Mitglied
Hallo,
ich habe eine PHP Datei die es erlauben soll, dem Anwender verschiedene Dateien auf unseren Server hochzuladen. Leider funktioniert dieser Upload aber nicht. Irgendwo muss auch in dem PHP Teil ein Fehler sein. Ich habe den entsprechenden Ordner auf dem Server mit 777 die entsprechenden CHMOD Attribute gegeben. Egal was ich hochladen will, es geht einfach nicht.

Wer kann mir da helfen.

Hier ist der Link zur Seite: http://www.artbase-software.de/support/upload.php

Hier der Code:
Code:
<?php
// Einstellungen:
  // Verzeichnis, in das die Dateien hochgeladen werden;
  // muss vorhanden sein und benötigt Schreiberechte (CHMOD 777):
$upload_dir = "ftp://www.artbase-software.de/upload/";
  // maximale Dateigröße in KB:
$max_file_size = 50000;
  // maximale Größe bei Bildern:
$max_image_width = 1024;
$max_image_height = 768;
  // Datei-Typen:
$accepted_file_types = array('image/jpeg','image/pjpeg','image/gif','image/png','text/plain','text/html','file/zip','file/rar','file/pdf','file/mdb','file/mdf');
  // Datei-Endungen:
$accepted_file_extensiones = array('jpg','jpeg','gif','png','txt','html','htm','zip','rar','pdf','mdb','mdf');

// Sprache:
$lang['title']                  = 'Datei hochladen';
$lang['upload_subm_button']     = 'OK - Hochladen';
$lang['error_headline']         = 'Fehler:';
$lang['invalid_file_type']      = 'ungültiges Dateiformat ([file_type])';
$lang['invalid_file_extension'] = 'ungültige Datei-Erweiterung ([file_extension])';
$lang['file_too_large']         = 'Datei zu groß ([size] KB)';
$lang['image_too_large']        = 'Bild zu groß ([width] x [height])';
$lang['file_already_exists']    = 'die Datei <b>[file]</b> existiert bereits';
$lang['upload_successful']      = 'Die Datei [file] wurde erfolgreich hochgeladen!';
$lang['upload_not_successful']  = '<b>Fehler:</b> Die Datei [file] konnte nicht gespeichert werden!';
$lang['load_up_another_file']   = "eine weitere Datei hochladen...";

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de"><!-- InstanceBegin template="/Templates/temp_abagenta.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<!-- InstanceBeginEditable name="doctitle" -->
<title><?php echo $lang['title']; ?></title>
<!-- InstanceEndEditable -->
<!-- InstanceBeginEditable name="meta" -->
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta name="Page-Type" content="Firmen, Software, Produktinfo" />
<meta name="Description" content="Maklersoftware, Versicherungssoftware, Maklersoftware f&uuml;r Versicherungsmakler, Versicherungssoftware f&uuml;r Finanzdienstleister. aB-Agenta die innovative Verwaltungssoftware f&uuml;r Versicherungsvermittler." />
<meta name="Keywords" content="Versicherungssoftware, Maklersoftware, Verwaltungssoftware, Verwaltungsprogramme, Versicherungsvermittler, Software f&uuml;r Versicherungsvermittler, Maklerverband, Maklerverwaltungsprogramm, Maklerverwaltungssoftware, Software f&uuml;r Finanzdienstleistungen, Finanzdienstleister, Software Versicherungsmakler, Versicherungs Software, Maklerverwaltungssystem, Software Versicherungsmakler, Maklerprogramm, Maklerprogramme, Versicherungsb&uuml;ros, Versicherungsb&uuml;ro, Maklerverwaltung, Agenturverwaltung, Agentursoftware, Kunden und Vertragsverwaltung, Verwaltungsprogramm, Maklerverb&auml;nde, Provisionsabrechnung, Verwaltungsprogramm Versicherung, Indatex, Lutronik, Polaris, AMS, AMS Verwaltungsprogramm, Buchholz, Infoagent, IWM, IWM Software, Mapware, Service Office, Salia, Verwaltungssystem, Datenabgleich, GDV Datentransfer, OMDS, GDV, SQL, Versicherung, Software, Kundenverwaltung Software, Dokumentenverwaltung, Makler, Finanzdienstleistungen, Versicherungsmakler, Mehrfachagenten, Mehrfachvermittler, Kundenverwaltungsprogramm, Vertragsverwaltungsprogramm, Vertragsverwaltung, Softwarel&ouml;sungen" />
<meta name="abstract" content="Versicherungssoftware, Maklersoftware f&uuml;r Versicherungsvermittler" />
<meta name="pragma" content="no-cache" />
<meta name="language" content="Deutsch" />
<meta name="author" content="artBase! Software GmbH" />
<meta name="copyright" content="www.artbase-software.de" />
<meta name="robots" content="index, follow" />
<meta name="revisit-after" content="7 days" />
<meta name="Reply-to" content="info@artbase-software.de" />
<meta name="document-classification" content="Business and Economy" />
<meta name="document-distribution" content="Global" />
<meta name="cache-control" content="no-cache" />
<meta http-equiv="Content-Language" content="DE" />
<meta name="Publisher" content="www.artbase-software.de" />
<meta name="Publisher-Email" content="info@artbase-software.de" />
<meta name="document-rating" content="General" />
<meta name="Page-Topic" content="Firmen, Software, Versicherungssoftware, Produktinfo, Handel, Wirtschaft, Computer, Technik" />
<!-- InstanceEndEditable -->

<link href="../style_agenta/style_agenta.css" rel="stylesheet" type="text/css" />
<script type="text/JavaScript" src="../javascript/javascript_abagenta.js"></script>
<!-- InstanceBeginEditable name="styles" -->
<!--[if lte IE 6]>
<link rel="stylesheet" media="all" type="text/css" href="style_agenta/style_agenta_ie.css" />
<![endif]--><!-- InstanceEndEditable -->
<!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable --></head>

<body>

<div id="box"><a name="top" id="top"></a>
  <div id="box_top">
  	<div id="logo">
		<a href="../index.html"><img src="../images/logo_agenta_web.gif" alt="aB-Agenta - Verwaltungssoftware für Versicherungsvermittler (Logo)" width="145" height="69" /></a></div>
	<div id="menu_top">
		<p><a href="../kontakt.html">KONTAKT</a></p>
		<p><a href="../news/news.html">NEWS</a></p>	
		<p><a href="../presse/presse.html">PRESSE</a></p>
		<p><a href="../firma.html">FIRMA</a></p>
		<p><a href="../index.html">HOME</a></p>
	</div>
	<!-- InstanceBeginEditable name="top_title" -->
	<div id="top_title">
		<img src="../images/support/top_title_support.jpg" alt="aB-Agenta - Die innvovative Verwaltungssoftware f&uuml;r Versicherungsvermittler" width="790" height="142" usemap="#Map" />
<map name="Map">
  <area shape="rect" coords="14,113,93,140" href="../demo/demo.html" alt="" />
</map>
	</div>
	<!-- InstanceEndEditable -->
	<div id="menu">
		<p><a href="../maklersoftware/maklersoftware.html">AB-AGENTA</a></p>
		<p><a href="../demo/demo.html">DEMO</a></p>
		<p><a href="../angebote/angebote.html">ANGEBOTE</a></p>
		<p><a href="../praesentation/praesentation.html">PR&Auml;SENTATION</a></p>
		<p><a href="../referenzen/referenzen.html">REFERENZEN</a></p>
		<p><a href="../schulung/schulung.html">SCHULUNG</a></p>
		<p><a href="support.html">SUPPORT</a></p>
	</div>
  </div>
  <div id="box_content">
  	<!-- InstanceBeginEditable name="content" -->
    <div id="content">
		<div id="submenu">
			<p class="submenu"><a href="support.html">SUPPORT</a></p>
	    	<p class="submenu"><a href="online_support.html">ONLINE-SUPPORT</a></p>
			<p class="submenu"><a href="downloads.html">DOWNLOADS</a></p>
			<p class="submenu_active"><a href="upload.html">> DOWNLOADS</a></p>
		</div>
  		<p class="index"><img style="float:left" src="../images/arrow_index.gif" />UPLOAD</p>
	    <p class="title_content">Direkter Upload auf unseren FTP-Server.</p>
        <h2>In dem nachfolgendem Eingabefeld k&ouml;nnen Sie Dateien direkt auf unseren FTP-Server hochladen, falls diese Datei zu gro&szlig; sein sollte, um per E-Mail zu versenden.</h2>
        <p>Folgende Dateitypen können Sie hochladen: .zip, .rar, .pdf, .tif, .</p>
		<h1><?php echo $lang['title']; ?></h1>
<?php
 if (isset($_FILES['probe']) && $_FILES['probe']['size'] != 0 && !$_FILES['probe']['error'])
  {
   unset($errors);
   // file type ok?
   if (!in_array($_FILES['probe']['type'], $accepted_file_types)) $errors[] = str_replace("[file_type]",$_FILES['probe']['type'],$lang['invalid_file_type']);
   // extension ok?
   $exts = explode(".", basename($_FILES['probe']['name']));
   $file_extension = strtolower($exts[sizeof($exts)-1]);
   if (!in_array($file_extension, $accepted_file_extensiones)) $errors[] = str_replace("[file_extension]",$file_extension,$lang['invalid_file_extension']);
   // file size ok?
   if ($_FILES['probe']['size'] > $max_file_size*1000) $errors[] = str_replace("[size]",number_format($_FILES['probe']['size']/1000,0,",",""),$lang['file_too_large']);
   // if it's an image, image size ok?
   if (in_array($_FILES['probe']['type'], $accepted_file_types) && in_array($_FILES['probe']['type'],array('image/jpeg','image/pjpeg','image/gif','image/png','image/bmp','file/zip','file/rar','file/pdf','file/mdb','file/mdf')))
    {
     $image_info = getimagesize($_FILES['probe']['tmp_name']);
     if ($image_info[0] > $max_image_width || $image_info[1] > $max_image_width) { $lang['image_too_large'] = str_replace("[width]",$image_info[0],$lang['image_too_large']); $errors[] = str_replace("[height]",$image_info[1],$lang['image_too_large']); }
    }
   // filename already exists?
   if (file_exists($upload_dir."/".basename($_FILES['probe']['name']))) $errors[] = str_replace('[file]',$_FILES['probe']['name'],$lang['file_already_exists']);

   // if everything is ok load up the file:
   if (empty($errors))
    {
     if (move_uploaded_file($_FILES['probe']['tmp_name'], $upload_dir.'/'.basename($_FILES['probe']['name'])))
      {
       chmod($upload_dir.'/'.$_FILES['probe']['name'], 0644);
       ?><p><?php echo str_replace('[file]', '<a href='.$upload_dir.'/'.$_FILES['probe']['name'].'>'.$_FILES['probe']['name'].'</a>',$lang['upload_successful']); ?></p>
       <p class="small"><a href="<?php echo basename($_SERVER['PHP_SELF']); ?>"><?php echo $lang['load_up_another_file']; ?></a></p><?php
      }
     else
      {
       ?><p><?php echo str_replace('[file]', $_FILES['probe']['name'],$lang['upload_not_successful']); ?></p><?php
      }
    }
   // ...else show what's wrong:
   else
    {
     ?><p class="caution"><?php echo $lang['error_headline']; ?></p><ul><?php foreach($errors as $f) { ?><li><?php echo $f; ?></li><?php } ?></ul><br /><?php
    }
  }

// show the upload form:
if (empty($_FILES['probe']) || $_FILES['probe']['size'] == 0 || isset($errors))
 {
 ?>
 <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
 <input type="file" name="probe" /><br><br>
 <input type="submit" name="submit-button" value="<?php echo $lang['upload_subm_button']; ?>">
 </form>
 <?php
 }
?>
        
	<p class="arrow_top"><a href="#top"><img src="../images/arrow_top.gif" alt="pfeil_hoch" style="float:left;" /></a><a href="#top">Top</a></p>
	<p>&nbsp;</p>
    </div>
    <!-- InstanceEndEditable -->
	<!-- InstanceBeginEditable name="middle" -->
    <div id="middle">
    	<p><img src="../images/support/middle_support_support.jpg" alt="Versicherungsmakler Software, Versicherungssoftware, Software Versicherungen - aB-Agenta " width="130" height="202" /></p>
	</div>
    <!-- InstanceEndEditable -->
	<div id="news">
		<ul>
			<li class="news_headline">EINF&Uuml;HRUNGSPREIS</li>
			<li class="news_text"><span style="color:#cc0000; font-weight:bold;">
		    40% RABATT-Verl&auml;ngert </span></li>
			<li class="news_datum">[16.01.2007]</li>
			<li class="news_mehr"><a href="../angebote/einfuehrungspreis.html">... mehr</a></li>
		</ul>
		<p><img src="../images/news_trennstrich.gif" alt="" width="135" height="12" /></p>
		<ul>
			<li class="news_headline">aB-Agenta 2006</li>
			<li class="news_text">Neues Online-Update.</li>
			<li class="news_datum">[16.01.2007]</li>
			<li class="news_mehr"><a href="../news/news.html">... mehr</a></li>
		</ul>
		<p><img src="../images/news_trennstrich.gif" alt="" width="135" height="12" /></p>
		<ul>
			<li class="news_headline">Nachtrag  DKM 2006 </li>
			<li class="news_text">Eindr&uuml;cke &amp; Bilder.</li>
			<li class="news_datum">[29.11.2006]</li>
			<li class="news_mehr"><a href="../news/news.html">... mehr</a></li>
		</ul>
		<p><img src="../images/news_trennstrich.gif" alt="" width="135" height="12" /></p>
		<ul>
			<li class="news_headline">Freigabe neue Version </li>
			<li class="news_text">aB-Agenta 2006 </li>
			<li class="news_datum">[11.10.2006]</li>
			<li class="news_mehr"><a href="../news/news.html">... mehr</a></li>
		</ul>
		<p><img src="../images/news_trennstrich.gif" alt="" width="135" height="12" /></p>
	</div>
	<p>&nbsp;</p>
	<div id="footer">
		<p>&copy; 2006 by artBase! Software GmbH</p>
		<p>|</p>
		<p><a href="../agb.html">AGB</a></p>
		<p>|</p>
		<p><a href="../impressum.html">IMPRESSUM</a></p>	
	</div>
	<div class="clear">&nbsp;</div>
  </div>
  
</div>
</body>
<!-- InstanceEnd --></html>
Gruss
Holli
 
Zuletzt bearbeitet:
Hallo!

So wird sich niemand die Mühe machen zu helfen..... geschweige denn den Quelltext auch nur ansatzweise zu lesen. :rolleyes:

1. setze den Code in die PHP-Tags [ php ] und [ /php ] (ohne Leerzeichen).
2. rücke die Zeilen vernünftig ein, damit man auch erkennen kann wo was anfängt und wo was aufhört.
3. schmeisse überflüssigen Code raus..... die <meta>-Tags z.b. sind vollkommen uninteressant.
4. den Code nicht neu posten, sondern die Editierfunktion nutzen.

Gruss Dr Dau
 
Nun allso, ich könnte mir denken das dann Problem da ist:
ftp://www.artbase-software.de/upload
wie willst du mit dem Script auf den FTP zugreiffen? PHP kann eigentlich nur auf dem eigenen Server ausgeführt werden. Daher musst du den Pfad ändern. Wenn du die Dateien auf der page auf /upload/ laden willst must du nur upload/ schreiben. Dann muss dieser Ortner Upload auf dem Webserver sein. Hoffe du weist was ich meine. Downloaden könne die user dann immer noch via FTP. da musst du dann hald einfach den direkten Pfad zum Ordner nehmen.
 
Zurück