Afficher le BBCODE de l'image après upload

racacax Messages postés 117 Date d'inscription   Statut Membre Dernière intervention   -  
racacax Messages postés 117 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je possède un hébergeur d'images : https://www.000webhost.com/migrate?static=true et plusieurs forums. Sur mes forums, je suis obligé de mettre un lien vers celui-ci pour qu'ils hébergent une image. Donc j'ai crée un script PHP d'upload pour qu'ils puissent héberger une image tout en restant sur la page. Seulement, à la fin, mes utilisateurs ne savent pas où est hébergée l'image (elle est hébergé sur https://www.000webhost.com/migrate?static=true qui n'est pas encore fonctionnel). je voudrais en fait que dès que l'upload est terminé, le BBCODE de l'image s'affiche.
Voici le code pour l'instant :

<?php
if( isset($_FILES['image']) && $_FILES['image']['error'] == 0)
{
if( $_FILES['image']['size'] <= 100000000000000000000000000)
{
// Testons si l'extension est autorisée

$infosfichier = pathinfo($_FILES['image']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png');

if (in_array($extension_upload, $extensions_autorisees))
{
$dossier = 'images/upload/';
$fichier = basename($_FILES['image']['name']);

if(move_uploaded_file($_FILES['image']['tmp_name'], $dossier . $fichier)) //Si TRUE
{
echo ' Téléchargement effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo 'Erreur sur l\'extension de fichier';
}
}
else
{
echo 'La taille du fichier est trop grande';
}
}

?>
<div id="bloc">
<form method="post" enctype="multipart/form-data">
<p>
<input type="hidden" name="MAX_FILE_SIZE" value="1048576" />
<input type="file" name="image"/>
</p>
<p>
<input type="submit" value="Valider"/>
</p>
</form>
</div>

6 réponses

  1. iUser
     
    J'espère que la version finale sera plus sécurisée, optimisée ...

    il faut afficher quelque chose

    $BBcodes="[img]http://imgheberg.site11.com/forum/images/upload" . $fichier. "[ /img]";
    //Erreur d'affichage sur comentcamarche.net, il faut bien fermer la balise.

    echo $BBcodes;


    Vous ne travaillez pas avec AJAX ?
    Vous ne devriez pas faire confiance au nom du fichier de vos client...
    Que se passe-t-il si deux personne héberge un fichier avec le même nom ?
    (utilisation de uniqid() )
    La taille maximale est à ajuster.
    0
  2. racacax Messages postés 117 Date d'inscription   Statut Membre Dernière intervention   17
     
    Je ne m'y connais pas assez en PHP. Cette version est juste une page à intégrer sur un forum.
    Je vais voir ce qui se passe si une perssonne héberge un fichier avec un même nom

    Merci
    0
  3. racacax Messages postés 117 Date d'inscription   Statut Membre Dernière intervention   17
     
    @iUser : Comment faite vous pour utiliser uniqid ? Je n'arrive pas à l'insérer.
    0
  4. ElementW Messages postés 5690 Statut Contributeur 1 293
     
    'lut, petite remarque:
    a quoi sert cette ligne
     if( $_FILES['image']['size'] <= 100000000000000000000000000)
    .
    Si tu limites la taille de fichier a 100 Exaoctets? C'est bien plus que tout le stockage digital qu'on a sur toute la planète terre...
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. racacax Messages postés 117 Date d'inscription   Statut Membre Dernière intervention   17
     
    C'est en phase de test, j'avais mis trop petit (10) du coup j'ai mis plein de 0 mais je vais bien sûr limiter à 2 MO comme je le fais sur le site. C'est juste un petit module pour forums
    0