Habe bei mir das Upload-Modul --ALTER LINK WURDE ENTFERNT-- installiert und erhalte im Frontend folgende Fehlermeldung:
Parse error: syntax error, unexpected $end in U:xampplitehtdocsxxxxmodulesmod_updownhelper.php on line 187
Ich vermute, dass da ein Fehler im Code der php-Datei vorliegt. Habe aber von php nahezu keine Ahnung.
Ich stelle hier mal den Quelltext zur Verfügung. Vielleicht sieht ja jemand den Fehler:
Code:
<?php
defined( '_JEXEC' ) or die( 'Restricted Access' );
class mod_updownHelper
{
public function getUser()
{
$user =& JFactory::getUser();
if ($user->id == 0)
{
return 'Gast';
} else
{
return $user->username;
}
}
public function getNow()
{
$datum = date("D, d.F Y H:i:s");
$datum=mod_updownHelper::GerMon($datum);
return $datum;
}
public function GerMon($datum)
{
$datum = eregi_replace ( 'Mon', 'Montag', $datum );
$datum = eregi_replace ( 'Tue', 'Dienstag', $datum );
$datum = eregi_replace ( 'Wed', 'Mittwoch', $datum );
$datum = eregi_replace ( 'Thu', 'Donnerstag', $datum );
$datum = eregi_replace ( 'Fri', 'Freitag', $datum );
$datum = eregi_replace ( 'Sat', 'Samstag', $datum );
$datum = eregi_replace ( 'Sun', 'Sonntag', $datum );
$datum = eregi_replace ( 'January', 'Januar', $datum );
$datum = eregi_replace ( 'February', 'Februar', $datum );
$datum = eregi_replace ( 'March', 'März', $datum );
$datum = eregi_replace ( 'May', 'Mai', $datum );
$datum = eregi_replace ( 'Jun ', 'Juni ', $datum );
$datum = eregi_replace ( 'July', 'Juli', $datum );
$datum = eregi_replace ( 'October', 'Oktober', $datum );
$datum = eregi_replace ( 'December', 'Dezember', $datum );
return $datum;
}
public function uploadrechte($params)
{
switch ( $params->get('uploadrechte') )
{
case 'Registered':
$var =1;
break;
case 'Author':
$var =2;
break;
case 'Editor':
$var =3;
break;
case 'Publisher':
$var =4;
break;
case 'Manager':
$var =5;
break;
case 'Administrator':
$var =6;
break;
case 'Super Administrator':
$var =7;
break;
default:
$var =0;
break;
}
return $var;
}
public function allow($usertype)
{
switch ($usertype)
{
case 'Registered':
$var =1;
break;
case 'Author':
$var =2;
break;
case 'Editor':
$var =3;
break;
case 'Publisher':
$var =4;
break;
case 'Manager':
$var =5;
break;
case 'Administrator':
$var =6;
break;
case 'Super Administrator':
$var =7;
break;
default:
$var =0;
break;
}
return $var;
}
public function upload($_FILES,$params,$updir)
{
// Whiteliste Dateiendungen und Ersetzungen
$Erlaubte_Dateiendungen = explode(',',$params->get('Extensions'));
$Dateiname_bereinigen = array ( 'ä' => 'ae', 'ö' => 'oe', 'ü' => 'ue', 'ß' => 'ss', ' ' => '_' );
// Pruefen ob die hochgeladenen Datei mehr als 0 Byte hat
// Hat sie das nicht, wurde auch nichts hochgeladen, logisch, was?! ;)
if ($_FILES['datei']['size'] > 0)
{
// Dateiendung der hochgeladenen Datei abtrennen
$UploadDateiEndung = array_pop ( explode ( ".", strtolower ( $_FILES['datei']['name'] ) ) );
// Schauen ob die Endung der hochgeladenen Datei in der Whitelist steht
if ($params->get('allow')==0):
else:
if (!in_array ( $UploadDateiEndung, $Erlaubte_Dateiendungen ))
{
//die( "Die angehängte Datei hat eine nicht erlaubte Dateiendung!" );
?>
<script type="text/javascript">
alert("ungültiger Dateityp!")
</script>
<?
return 0;
}
endif;
if($params->get('size')>0):
if($_FILES['datei']['size']>$params->get('txtsize')):
?>
<script type="text/javascript">
alert("Datei größer als erlaubt!")
</script>
<?
return 0;
endif;
endif;
// Neuer Dateiname erzeugen indem Umlaute und Leerzeichen umgewandelt werden
$DateiNameNeu = strtr ( strtolower ( $_FILES['datei']['name'] ), $Dateiname_bereinigen );
// UMASK resetten um Dateirechte zu ändern (wird nur fuer Linux benoetigt, Windows ignoriert das)
$umask_alt = umask( 0 );
// Hochgeladenen Datei verschieben
if (@move_uploaded_file ( $_FILES['datei']['tmp_name'], $updir.'/'.$DateiNameNeu ))
{
// Die Datei wurde erfolgreich an ihren Bestimmungsort verschoben
?>
<script type="text/javascript">
alert("Upload erfolgreich abgeschlossen!")
</script>
<?
// Dateirechte setzen, damit man später die Datei wieder vom FTP bekommt und die UMASK auf den alten Wert setzen
@chmod ( $DateiNameNeu, 0755 );
umask ( $umask_alt );
return 1;
}
else
{
// UMASK resetten
umask ( $umask_alt );
// Hier steht Code der ausgefuehrt wird, wenn der Upload fehl schlug
?>
<script type="text/javascript">
alert("Upload fehlgeschlagen!")
</script>
return 0;
<?
}
}
}
public function allfiles($dir)
{
$verz = dir($dir);
$i=-1;
while($entry = $verz->read())
{
if(trim($entry)!='..' && trim($entry)!='.')
{
$i++;
$L[$i]=trim($entry);
}
}
$verz->close();
return $L;
}
}
?>