2016-07-27 3 views
0

Ich erfolgreich hochgeladen das Bild in den Ordner und seinen Namen in die Datenbank, aber der gleiche Code lädt nicht die Datei in den Ordner, aber lädt den Namen in der Datenbank.Folgende ist meine Code zum Hochladen der Audiodatei in meine Ordnermusik.Code funktioniert für Bild, aber nicht für andere Dateien in coderigniter

Regler Funktion

public function add_audio(){ 

     $config['upload_path'] = './musics/'; 
     $config['allowed_types'] = 'mp3'; 
     $config['max_size'] = '100000000000000'; 

     $this->load->library('upload',$config); 
     chmod('musics/', 0777); 
     $this->upload->do_upload('output'); 

     $data['audio'] = $_FILES['output']['name']; 
     $this->load->model('main'); 
     $query = $this->main->insert('audio',$data);    

     if($query = TRUE){ 

      $this->load->view('admin/success'); 
     } 
     else{ 

      redirect($_SERVER['HTTP_REFERER']); 
     } //end else 
    } //end function 
+0

if ($ query = TRUE) sollte == nicht einfach gleiches Zeichen sein .. Sie vergleichen es und keinen Wert zu $ ​​query zuweisen. Benutze == –

+0

versuche ''output'' von' $ this-> upload-> do_upload (' output ') zu entfernen; ' –

+0

ich habe == und entferne' output '... es aber immer noch file bekommt den ordner nicht .... nur sein Name ist in die Datenbank hochgeladen .... ich weiß nicht, was falsch ist und es frustriert mich ...... @ LeeBalino –

Antwort

0

Versuchen Sie, die 'output' von $this->upload->do_upload('output');

entfernen und versuchen Sie, einen Teil des Codes mit diesem zu ersetzen:

if (! $this->upload->do_upload()) 
{ 
    $data['error'] = $this->upload->display_errors();  
    //line of codes that displays if there are errors 
} 
else 
{ 
    $data['audio'] = $_FILES['output']['name']; 

    $this->load->model('main'); 
    $query = $this->main->insert('audio',$data); 

    if($query == TRUE){ 
     $this->load->view('admin/success'); 
    } 
} 
+0

Ich ersetze meinen Code mit Ihrem Code, aber es zeigt das Leerzeichen Seite .... nichts angezeigt @lee balino –

+0

versuchen 'printr ($ data ['error'])'. Mal sehen, was ist der Fehler –

+0

es heißt, Sie haben nicht die Datei zum Hochladen ausgewählt ... @ Lee Balino –

0

In dem obigen Code, den Sie

angegeben haben
if($query = TRUE){ 
    $this->load->view('admin/success'); 
} 

Da es ein Vergleich ist und nicht als Zuweisung sollte dies als

if($query == TRUE){ 
    $this->load->view('admin/success'); 
} 
0

prüfen korrigiert werden es durch andere Dateiformate, ob Sie bekommen oder nicht:

print_r($_FILES);

und Sie verwenden = statt ==, wenn Bedingung.

versuchen Sie dies:

if($query = TRUE){ 

      $this->load->view('admin/success'); 
    } 
Verwandte Themen