
Zitat von
prowler666
Ich möchte gerne in einer selbstgeschriebenen Komponente eine Upload-Funktion intergrieren, mit der man auch das Zielverzeichnis auf dem Server angeben können soll.
Gibt es in der Joomla!-API irgendein Objekt, welches mir beim erstellen und löschen von Ordnern/Dateien behilflich ist?
Beim erstellen hilft
PHP-Code:
mosMakePath( $folder );
Löschen mußt du meines Wissens per Hand.

Zitat von
prowler666
Im Upload-Formular steht ja das action-Attribut:
<form action="xxx.php" method="POST" enctype="multipart/form-data">
Wenn ich dort eine selbstgeschriebene Datei angebe, was muss ich beachten, damit 1. die Datei auch aufgerufen wird und 2. das normale Joomla! weiterläuft. Anders gefragt, wie kann ich Parameter bei Joomla! über mehrere Aktionen hinweg sichern???
Ich hoffe ich hab mich verständlich ausgedrückt ...
Nein so ganz sicher bin ich mir nicht. Aber ich versuchs mal mit einer Antwort.
Im Kopf heißt es in der Regel
HTML-Code:
<form action="index.php" method="POST" enctype="multipart/form-data">
Alle Skripte müssen den Umweg über die index.php machen.
Angenommen, deine Komponente heißt com_myupload. Der Aufruf
Code:
http://www.webseite.tld/index.php?option=com_myupload&task=save
würde dann das Skript /components/com_myupload/myupload.php einbinden.
Dort könnte ungefähr sowas stehen:
PHP-Code:
<?php
defined( '_VALID_MOS' ) or die( 'Restricted access' );
$var = intval( mosGetParam( $_REQUEST, 'var', 0 ) );
switch($task) {
case 'save':
save($var);
break;
default:
upload();
break;
}
function upload() {
global $option;
?><form action="index.php" method="POST" enctype="multipart/form-data">
<input ...
<input type="hidden" name="option" value="<?php echo $option;?>" />
<input type="hidden" name="task" value="save" />
Die Variable $option enthält dabei "com_myupload".
Gruß, Michael
Lesezeichen