Der API-Aufruf ist identisch wie wenn Sie neue Beiträge erstellen oder bestehende Beiträge bearbeiten möchten.
- <?php
- api_edit(
- $data, // Inhalt
- $file, // Datei
- 'new', // Aktion
- $container, // Container ID
- '', // Artikel ID
- $publish, // Publikationseinstellung
- // 0 = nicht publizieren;
- // 1 = publizieren
- $username, // API-Username
- $password, // API-Passwort
- false // Fehler ausgeben (true|false)
- );
- ?>
Die Datei muss sich im Array $file befinden. Die normalen Felder befinden sich wie gewohnt im Array $data.
Der $file Array hat eine andere Syntax als der $data Array.
Beispiel "Datei-Upload":
Wenn über ein Formular für das Feld "upload" die Daten hochgeladen und verarbeitet werden sollen, dann sieht das Ganze so aus.
- <?php
- $file['upload'] = $_FILES['feldname'];
- ?>
Beispiel "Externe Datei":
Im Folgenden ist ein Beispiel enthalten wie die $file Variable aussehen sein muss, um das Feld "upload" zu befüllen. Die Werte sind optional.
- <?php
- $file['name']['new_1']['upload']['file'] = 'Grafik.jpg';
- $file['type']['new_1']['upload']['file'] = 'image/jpg';
- $file['tmp_name']['new_1']['upload']['file'] = 'http://www.server.de/Grafik.jpg';
- $file['error']['new_1']['upload']['file'] = 0;
- $file['size']['new_1']['upload']['file'] = 1024;
- ?>
Wenn die Variablen manuell gesetzt werden, müssen name, type, tmp_name, error und size befüllt werden.
- <?php
- $file['name'] ...
- $file['type'] ...
- $file['tmp_name']...
- $file['error'] ...
- $file['size'] ...
- ?>
name
Der ursprüngliche Dateiname.
type
Der Mime-Type der Datei, falls der Browser diese Information zur Verfügung gestellt hat. Ein Beispiel wäre "image/gif". Dieser Mime-Type wird jedoch nicht von PHP geprüft und kann somit falsch sein.
size
Die Größe der hochgeladenen Datei in Bytes.
tmp_name
Der temporäre Dateiname, unter dem die hochgeladene Datei auf dem Server gespeichert wurde.
error
Der Fehlercode des Uploads. Dieses Element wurde in PHP 4.2.0 hinzugefügt.
Dem jeweiligen Namen folgt ['new_1'] (mit entsprechender Zahl für jede Datei) wenn ein neuer Beitrag erzeugt werden soll. Wenn ein bestehender Beitrag bearbeitet werden soll, muss dessen ID eingegeben werden.
- <?php
- $file['name']['new_1'] ...
- $file['type']['new_1'] ...
- $file['tmp_name']['new_1']...
- $file['error']['new_1'] ...
- $file['size']['new_1'] ...
- ?>
Es folgt der Name des Felder in der Beitragsart in CUBE.
- <?php
- $file['name']['new_1']['feldname'] ...
- $file['type']['new_1']['feldname'] ...
- $file['tmp_name']['new_1']['feldname'] ...
- $file['error']['new_1']['feldname'] ...
- $file['size']['new_1']['feldname'] ...
- ?>
Abschließend muss immer noch ein ['file'] stehen.
- <?php
- $file['name']['new_1']['feldname']['file'] ...
- $file['type']['new_1']['feldname']['file'] ...
- $file['tmp_name']['new_1']['feldname']['file'] ...
- $file['error']['new_1']['feldname']['file'] ...
- $file['size']['new_1']['feldname']['file'] ...
- ?>