Verwendung des folgenden Codes in meiner Ansicht Datei (add.ctp) zu erstellen:
<div class="resources form">
<?php echo $this->Form->create('Resource');?>
<fieldset>
<legend><?php __('Add Resource'); ?></legend>
<?php
echo $this->Form->input('title');
echo $this->Form->input('file', array('type' => 'file'));
...
?>
</fieldset>
<?php echo $this->Form->end(__('Submit', true));?>
</div>
...
... und den folgenden Code in die Steuerung ...
function add() {
if (!empty($this->data)) {
$this->Resource->create();
if ($this->uploadFile() && $this->Resource->save($this->data)) {
$this->Session->setFlash(__('The resource has been saved', true));
$this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('The resource could not be saved. Please, try again.', true));
}
}
....
}
... mit der folgenden Funktion, den Prozess zu testen:
function uploadFile() {
$file=$this->data['Resource']['file'];
$this->data['Resource']['filename'] = 'failing with name:'.$file['name'].'/ file_mime: '.$file['filemime'];
return true;
}
die Datenbank ist Alwa Es wird mit dem ersten Zeichen des ursprünglichen Dateinamens der Datei gefüllt, unabhängig davon, welche Datei ich hochzuladen versuche oder auf welche Elemente des $ file-Arrays ich zugreifen möchte. Zum Beispiel mit test.gif ich:
„mit dem Namen andernfalls: t/file_mime: t“
Bemerkenswert ist dieser Code das Ergebnis mir die Aufgaben reduziert die Funktion war die auszuführen unten geringstes Minimum, um das Problem zu lokalisieren. Daher die Seltsamkeit des Ergebnisses.
Dateiname/varchar (200)/utf8_general_ci/NOT NULL
Ich bin neu in CakePHP und bin zu einem Totalverlust, was zu suchen, dies zu machen: Die Datenbankspalte für den Dateinamen ist wie folgt aufgebaut Arbeit, reiß meine Haare aus. Jede Hilfe oder Ausrichtung in die richtige Richtung würde dankbar angenommen werden.