[gelöst]Datei-Upload soll existierende Datei überschreiben
am 04.10.2012 - 12:53 Uhr in
Hallo zusammen,
ist mit Sicherheit nur eine Kleinigkeit. Ich habe eine HTML-Seite hochgeladen und diese lasse ich per iframe anzeigen.
Jetzt kann es sein das es auf dieser Seite Änderungen gibt und ich möchte jetzt einfach nur diese Seite neu hochladen und die existierende soll entweder
umbenannt oder aber gelöscht werden. Wie bekomme ich das hin?
Ati
- Anmelden oder Registrieren um Kommentare zu schreiben

Wie lädst du sie hoch? Per
am 04.10.2012 - 16:31 Uhr
Wie lädst du sie hoch?
Per FTP?
Dann einfach wieder hochladen ;-).
Per File-Upload in Drupal?
Node bearbeiten und Datei löschen und erneut hochladen.
Moin, das ganze per Node zu
am 09.10.2012 - 07:40 Uhr
Moin,
das ganze per Node zu machen habe ich noch nicht versucht....ich wollte es erstmal anders lösen. Also ein kleines Modul geschrieben, aber auch hier wird die neue
Datei umbenannt und nicht die alte überschrieben bzw. umbenannt. Hier mal der Code meines Modules
<?php
function dateiupload_menu() {
$items = array();
$items['dateiupload/form'] = array(
'title' => 'Dateiupload',
'page callback' => 'dateiupload_form',
'access arguments' => array('access content'),
'type' => MENU_CALLBACK,
);
return $items;
}
function dateiupload_form(){
return drupal_get_form('dateiupload_my_form');
}
function dateiupload_my_form($form_state) {
$form['file'] = array(
'#type' => 'file',
'#title' => 'Datei',
'#description' => 'Erlaubte Erweiterungen: htm, html, pdf, txt, doc, xls, jpg, jpeg, png, gif',
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'Hochladen',
);
return $form;
}
function dateiupload_my_form_validate($form, &$form_state) {
$file = file_save_upload('file', array(
'file_validate_extensions' => array('htm html pdf txt doc xls png gif jpg jpeg'),
),
False,
FILE_EXISTS_REPLACE
);
if ($file) {
if ($file = file_move($file, 'public://')
) {
$form_state['storage']['file'] = $file;
}
else {
form_set_error('file', 'Fehler! Datei konnte nicht hochgeladen werden.');
}
}
else {
form_set_error('file', 'Keine Datei hochgeladen.');
}
}
function dateiupload_my_form_submit ($form, &$form_state) {
$file = $form_state['storage']['file'];
unset($form_state['storage']['file']);
$file->status = FILE_STATUS_PERMANENT;
file_save($file);
drupal_set_message('Datei wurde hochgeladen, Dateiname: @filename.', array('@filename' => $file->filename));
}
Hmpf...Api´s und ich...das
am 09.10.2012 - 09:10 Uhr
Hmpf...Api´s und ich...das wird keien Freundschaft mehr.
$file = file_save_upload('file', array('file_validate_extensions' => array('htm html pdf txt doc xls png gif jpg jpeg'), // Validate extensions.
)
);
und
if ($file = file_move($file, 'public://', FILE_EXISTS_REPLACE)So ist es richtig und so klappts es dann auch!
Na dann, überarbeite mal noch
am 09.10.2012 - 09:23 Uhr
Na dann, überarbeite mal noch dein Titel. Weil so, sind es 2 vers. Dinge, weil entweder wird die Datei ersetzt oder eine neue Datei erstellt mit anderen Namen ;-)