CodeIgniter 4, Donner accès aux fichiers à télécharger

Fermé
Dominicytos - 11 août 2020 à 20:44
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 - 12 août 2020 à 12:42
Bonsoir à tous. Je me bats avec un problème depuis cette semaine sans succès.

Sur mon site, je souhaite ajouter des liens pour permettre aux utilisateurs connectés de télécharger des fichiers (de différents formats: image, pdf, doc, excel et autres)

J'ai pointé l'url dans le href des liens mais en ligne cela ne fonctionne pas alors que localement il va normalement et se télécharge.
{
<a class="dropdown-item" target="_blank" href="<?= file_dir().$values['chemin' </font> ?> ">
<? php echo $ values ​​['intitule']; ?> </a>
}


Ceci est ma fonction file_dir


fonction file_dir ()
{

$ count = substr_count (base_url (), "/ public");
si ($ count> 0)
return str_replace ("/ public", "/ writable /", base_url ()). "uploads /";
return base_url (). "/ writable / uploads /";
}


Je code dans CodeIgniter 4 et les fichiers sont en écriture (suivant la convention codeIgniter 4)
Merci beaucoup pour votre aide

1 réponse

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
Modifié le 12 août 2020 à 12:42
Bonjour,

Déjà, à l'avenir, merci d'utiliser les balises de code ( en y précisant le langage php ) pour poster ton code sur le forum.
Explications à lire entièrement disponibles ici :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code


Ensuite, je vois des erreurs dans ton code
si ($ count> 0) 

"si" ?? ... ça n'existe pas... c'est "if"

Et pour l'ouverture des balises php tu as mis un espace en trop
<? php 

à remplacer par
<?php 


Evite également les "open short tags" ils peuvent être désactivés sur ton serveur.
Il faut donc remplacer les lignes genre
<?= 

par :
<?php echo


il te manque également un crochet de fermeture
$values['chemin' 

et je ne vois pas ce que vient faire ce "</font>" à cet endroit...

Bref... autant d'erreur en si peu de lignes de codes... attention !

-1