Codeigniter image de téléchargement et le chemin d'accès à la base de données
Je vais avoir un peu d'un problème en essayant de faire un formulaire d'upload dans codeigniter.
Pas sûr de ce que je fais de mal, tout le reste est arriver correctement dans la base de données. J'ai regardé dans la documentation et j'ai essayé plusieurs choses mais je n'y trouve pas de plus loin.. Tout commentaire est très apprécié!
Merci à l'avance.
modèle:
public function set_newstudent()
{
$this->load->helper('url');
$slug = url_title($this->input->post('naam'), 'dash', TRUE);
$config['upload_path'] = '/file_path/';
$config['allowed_types'] = 'gif|jpg|png|jpeg';
$this->load->library('upload', $config);
$this->upload->data('full_path'););
$data_upload_files = $this->upload->data();
$image = $data_upload_files[full_path];
$data = array(
'naam' => $this->input->post('naam'),
'voornaam' => $this->input->post('voornaam'),
'id' => $slug,
'text' => $this->input->post('text'),
'picture'=>$this->input->post('picture')
);
return $this->db->insert('student', $data);
}
contrôleur:
public function create()
{
$this->load->helper('form');
$this->load->library('form_validation');
$data['title'] = 'Create a new Student';
$this->form_validation->set_rules('naam', 'Naam', 'required');
$this->form_validation->set_rules('voornaam', 'Voornaam', 'required');
$this->form_validation->set_rules('text', 'Text', 'required');
if ($this->form_validation->run() === FALSE)
{
$this->load->view('templates/header', $data);
$this->load->view('students/create');
$this->load->view('templates/footer');
}
else
{
$this->student_model->set_newstudent();
$this->load->view('students/success');
}
}
vue:
<?php echo validation_errors(); ?>
<?php echo form_open_multipart('student/create');?>
<div class="form-group">
<label for="naam">Naam</label><br>
<input type="input" name="naam" class="form-control" /><br />
</div>
<div class="form-group">
<label for="voornaam">Voornaam</label><br>
<input type="input" name="voornaam" class="form-control"/><br />
</div>
<div class="form-group">
<label for="text">Vertel iets over jezelf:</label><br>
<textarea name="text" class="form-control" rows="5"></textarea><br />
</div>
<div class="form-group">
<label for="text">Kies een profiel foto:</label><br>
<input type="file" name="userfile" class="btn btn-default btn-file" />
</div>
<input type="submit" class="btn btn-success" name="submit"
value="Create student" style="width:100%;margin-bottom:1%" />
</form>
- Qu'est-ce que cela ?
$this->upload->create
- Désolé monsieur mon erreur, il devrait être $this->télécharger->data('full_path');
- Quelle est la version de codeigniter utilisez-vous s'il vous plaît ?
- Code de l'allumeur version 3.1.4
- Ce que vous essayez de l'insérer dans la colonne d'id ?
- dans la colonne image
Vous devez vous connecter pour publier un commentaire.
Comme je le vois, il n'y a pas de
C'est la fonction de responsable d'effectuer le téléchargement et il n'y est pas dans votre code,vous voudrez peut-être lire ceci:
Téléchargement du fichier de Classe
Mise à JOUR
Votre code devrait ressembler à quelque chose comme ceci,
Contrôleur:
Modèle:
echo $this->upload->display_errors('<p>', '</p>');
Le problème est dans votre code lorsque vous utilisez de téléchargement de la bibliothèque. Vous utilisez la mauvaise fonction de téléchargement de fichiers. Ci-dessous est le code approprié:
Ce code devrait fonctionner.