Partage
  • Partager sur Facebook
  • Partager sur Twitter

Upload d'image CKEditor 5

Sujet résolu
    23 mai 2018 à 20:18:16

    Bonjour à tous,

    Je suis actuellement en train de développer un site web dans lequel je code une "publication d'article".

    Dans celui-ci, il y a un bouton "Add a textarea" permettant de rajouter des cadres textes et "Done" pour upload le tout sur la base de données.

    Chaque fois que l'on appuie sur "Add a textarea", deux cadres textes apparaissent, un pour le titre et le second pour le contenu. Uniquement le second cadre est utilisé par le CKEditor.

    J'utilise CKFinder pour l'upload des images mais a priori sa fonctionnalité n'est pas mise en jeu car les images sont publiées dessus et sur une autre page il est entièrement fonctionnel.

    Voici le problème : lorsque je publie un "article" uniquement textuel, en gras ou italique, tout va bien.

    Mais si je décide d'upload une image, elle se charge dans le cadre texte puis lorsque je décide de l'upload, l'image apparait dans le CKFinder mais l'article n'est pas publié (dans la table de phpMyAdmin).

    <form method="post" action="article.php?Dossier=<?php echo $_GET['Dossier'] ?>"> 	
    <?php while($nb < $_SESSION['Cadre']){
    		$nb = $nb + 1;
    		$titre = $titre + 1;
    		if(isset($_POST['done'])){ 
    	$req = mysqli_query($connexion, 'INSERT INTO article2 VALUES (NULL , "'.$_GET['Dossier'].'", "'.$_POST[$titre].'", "'.$_POST['a'.$nb].'")');
    }
    echo "".$nb."" ?>
    <textarea type="text" name="<?php echo "".$titre."" ?>" rows=1><?php echo "".$_POST[$titre]."" ?></textarea> <br/>
    <textarea name="a<?php echo "".$nb."" ?>" id="a<?php echo "".$nb."" ?>"><?php echo "".$_POST['a'.$nb]."" ?></textarea> <br/> <br/>
    <script> 
    ClassicEditor
        .create( document.querySelector('#a<?php echo "".$nb."" ?>'), {
            ckfinder: {
                uploadUrl: '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files&responseType=json'
            }
        } );
     </script>
    		
    <?php } ?>
    <input type="submit" name="add" value="Add a textarea">
    <input type="submit" name="done" value="Done"> <br/>
    </form>



    Légende

    - article2 est la table

    - $_SESSION['Cadre'] est le nombre de cadre défini plus haut

    - ligne 8 me sert juste à voir si il a bien une valeur 

    - le "a" présent devant le nom du cadre est juste là pour que le nom ne soit pas uniquement numérique (car ça ne marchait pas)

    Si vous avez une quelconque question sur le code n'hésitez pas.

    Je vous en conjure, aidez-moi je n'en peux plus j'ai fait je ne sais combien d'essais mais qui se sont à chaque fois soldés par des échecs.

    Merci à tous pour votre coopération et bonne journée !

    -
    Edité par JérémyMt 23 mai 2018 à 22:02:50

    • Partager sur Facebook
    • Partager sur Twitter
      25 mai 2018 à 7:44:45

      J'ai également remarqué hier que si je rentre dans la textarea le contenu d'une table dans laquelle j'ai déjà posté une image, cet article ne se poste pas non plus. 

      J'essayerai d'ajouter des screens ce soir pour rendre le tout plus compréhensilble. 

      Merci à tous ! 

      • Partager sur Facebook
      • Partager sur Twitter
        26 mai 2018 à 11:40:49

        Voici les images pour que vous compreniez mieux : 

        Le premier screen correspond à ma publication d'articles (dans laquelle les images ne peuvent être publiées).

        J'ai essayé de publier le contenu d'une news qui contenait une image en laissant les balises (ma page news ne possède qu'une textarea).

        La seconde image apparait une demi-seconde après avoir cliqué sur "Done" (je me suis trompé, la ligne noire devrait être en dessous des boutons ^^) mais rien n'apparait dans la base de données.

        La dernière image montre le résultat dans ma page news.

        Je vous en prie, aidez-moi je n'en peux plus, je ne vois plus quoi faire...

        Merci

        • Partager sur Facebook
        • Partager sur Twitter

        Upload d'image CKEditor 5

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown