cakephp 2.1 wie zum hochladen von einem Bild in ein einfaches Formular und betrachten Sie
Seine so verrückt, wie etwas so einfaches so schwierig sein kann.
Bitte Aufruf an alle cakephp 2.1 gurus. Ich habe ein Formular, es hat einen Namen und text-Bild - (var) - Feld.
Möchte ich einfach nur Bilder posten, keine Skalierung, kein Vorschaubild, nichts besonderes, nur ein einfaches mvc-Beispiel der Entsendung ein Bild und schaut es in der Ansicht.ctp.
Thats it. Ich habe gegangen durch die /en/2.1 Buch-und api auf cakephp.org aber ich kann einfach nicht scheinen, um das mvc-arbeiten so weit wie es sehen-upload in einen Ordner und betrachten Sie in ctp.
Mein controller
public function add() {
if ($this->request->is('post')) {
$this->ListShExPainImage->create();
if ($this->ListShExPainImage->save($this->request->data)) {
$this->Session->setFlash(__('The list sh ex pain image has been saved'));
$this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('The list sh ex pain image could not be saved. Please, try again.'));
}
}
}
public function view($id = null) {
$this->ListShExPainImage->id = $id;
if (!$this->ListShExPainImage->exists()) {
throw new NotFoundException(__('Invalid list sh ex pain image'));
}
$this->set('listShExPainImage', $this->ListShExPainImage->read(null, $id));
}
Meine hinzufügen.ctp
<?php echo $this->Form->create('ListShExPainImage');?>
<fieldset>
<legend><?php echo __('Add List Sh Ex Pain Image'); ?></legend>
<?php
echo $this->Form->input('name');
echo $this->Form->input('image', array('type' => 'file'));
?>
</fieldset>
<?php echo $this->Form->end(__('Submit'));?>
Meiner Sicht.ctp
<h2><?php echo __('List Sh Ex Pain Image');?></h2>
<dl>
<dt><?php echo __('Id'); ?></dt>
<dd>
<?php echo h($listShExPainImage['ListShExPainImage']['id']); ?>
</dd>
<dt><?php echo __('Name'); ?></dt>
<dd>
<?php echo h($listShExPainImage['ListShExPainImage']['name']); ?>
</dd>
<dt><?php echo __('Image'); ?></dt>
<dd>
<?php echo h($listShExPainImage['ListShExPainImage']['image']); ?>
</dd>
</dl>
Ihre Hilfe wäre sehr geschätzt, danke im Voraus.
InformationsquelleAutor user1093405 | 2012-05-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
In Ihrem controller, du bist nicht tut alles mit dem Datei-upload. Obwohl Kuchen zaubert manchmal automatisch zu erraten, was Sie wollen, zu tun mit, dass der upload ist nicht einer von Ihnen.
Wie gesagt in das Buch, die Datei-upload-Feld gibt ein array mit verschiedenen Schlüssel. Sollten Sie die
name
- Taste und speichern Sie es alsimage
Feld (wie das ist, was Sie zu sein scheinen, rufen). Zum Beispiel:Darüber hinaus werden Sie brauchen, um eine so genannte
multipart/form-data
enctype in der form, um in der Lage sein, zu analysieren, Bild-uploads, indem Sie die Datei-Typ für die Formular erstellen-Optionen.Und auch, vergessen Sie nicht, bewegen Sie die Datei in Ihrem temp-Ordner zu einem endgültigen Standort.
InformationsquelleAutor Oldskool
Müssen Sie auch fügen Sie einen 'Typ', um Ihre form:
Dann in den Controller etwas wie das hier tun:
Dann tun Sie erstellen und speichern-routine.
Ihrer Ansicht nach tun Sie etwas wie dieses Bild zu zeigen:
Die Chancen sind sehr gut, es ist eine Genehmigung im Zusammenhang, aber es tut mir Leid ich kann nicht helfen, viel auf Windows.
InformationsquelleAutor Adam Culp