2017-09-18 9 views
0

Ich muss Bildname nach dem Upload umbenennen, weil meine Anforderung ist, ich muss ID mit ihm hinzufügen, so dass es möglich ist, nach Speichern Bildname in DB.Benennen Sie den Bildnamen nach dem Hochladen in Codezeichner

Ich habe Code getan für das Hochladen von Bild mit und ohne Wasserzeichen in verschiedene Ordner, aber jetzt will ich es ändern ist Namen wie:..

$ imagename = $ imgId ‚‘.. Zufalls ‚‘ $ ext;

Ich habe mit unten Code versucht, aber das gleiche Bild in beiden Ordner mit Wasserzeichen gespeichert. Ich möchte das Originalbild im Ordner original_image und mit einem Wasserzeichen im Ordner watermark_folder speichern. Bitte helfen Sie mir, dieses Problem zu lösen.

$getImgs = $this->photographer_model->get_uploaded_image($result); 
        $getExt = substr($getImgs[0]['img_name'], strrpos($getImgs[0]['img_name'],'.')+0); 
        $randomStr = $this->generate_random_string(20); 
        $fileName = $result."-".$randomStr."".$getExt; 
        $originalImgPath = base_url()."assets/original_image/".$fileName; 
        $watermarkImgPath = base_url()."assets/watermark_image/".$fileName; 
        $uploadOrgImg = 'assets/original_image/'.$fileName; 
        $uploadWaterImg = 'assets/watermark_image/'.$fileName; 
        $updateImg = $this->photographer_model->update_img_path($result, $fileName, $originalImgPath, $watermarkImgPath); 
        if(file_exists('assets/original_image/'.$getImgs[0]['img_name']) || file_exists('assets/watermark_image/'.$getImgs[0]['img_name'])) { 
         unlink('assets/original_image/'.$getImgs[0]['img_name']); 
         unlink('assets/watermark_image/'.$getImgs[0]['img_name']); 
         $config1['upload_path'] = 'assets/original_image/'; 
         $config1['allowed_types'] = 'jpeg|png|jpg|svg'; 
         $config1['file_name']  = $fileName; // set the name here 
         $this->load->library('upload', $config1); 
         $this->upload->initialize($config1); 
         $this->upload->do_upload('image'); 
         $config['upload_path'] = 'assets/watermark_image/'; 
         $config['allowed_types'] = 'jpeg|png|jpg|svg'; 
         $config['file_name']  = $fileName; // set the name here 
         $this->load->library('upload', $config); 
         $this->upload->initialize($config); 
         $this->upload->do_upload('image'); 
        } 
+0

entnehmen Sie bitte diesen Link [https://stackoverflow.com/questions/35710385/ image-missing-and-required-wordpress-amp-struktur-doesnt-add-image-attribute] Ich hoffe, es wird hilfreich sein –

+0

'' '$ config ['encrypt_name']' '' verwenden Sie dies, um Datei beim Hochladen automatisch umzubenennen . – kishor10d

Antwort

0

Aktualisieren Sie Ihren Code unten Mit diesen

$config1['upload_path'] = 'assets/original_image/'; 
$config1['allowed_types'] = 'jpeg|png|jpg|svg'; 
$config1['encrypt_name'] = TRUE; 

Und Update für die zweiten

$config['upload_path'] = 'assets/watermark_image/'; 
$config['allowed_types'] = 'jpeg|png|jpg|svg'; 
$config['encrypt_name'] = TRUE; 
+0

Danke für Ihre Zeit und Anregung. Aber meine Frage ist etwas anderes. Meine Anforderung ist, ich möchte Bild speichern wie: imageId. ''. Randomstring. ''. Ext. Ich denke, Image-ID wird nach dem Speichern des Image-Namen in DB kommen. Wie können wir das hochgeladene Bild umbenennen? Ich habe Code gemacht, um Bild umzubenennen, aber Problem ist in beiden Verzeichnis Wasserzeichenbild speichern. – deepak

+0

Okay gut dann entfernen $ config ['encrypt_name'] = TRUE; Dann wie: imageId. ''. Randomstring. ''. Ext. Für dieses verketten Bild mit der .now(). Dies erzeugt aktuelle Zeitstempel- und Diff-Ergebnisse –

Verwandte Themen