Afficher le BBCODE de l'image après upload

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. 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
    1. Contributeur
      '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...
      1. @iUser : Comment faite vous pour utiliser uniqid ? Je n'arrive pas à l'insérer.
        1. 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
          1. 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.