L'affichage des datas qui sont dans ma DB via TinyMCE
RésoluAgneauSincere36 Messages postés 11 Date d'inscription Statut Membre Dernière intervention - 17 janv. 2025 à 17:51
- Photos de le poincaré
- Affichage double ecran - Guide
- Partager des photos via un lien - Guide
- Forum Bases de données
- Windows 11 affichage classique - Guide
- Db designer - Télécharger - Bases de données
5 réponses
ça devrait donner un truc du genre
Fichier de connexion à la bdd à utiliser dans tous tes autres fichiers !
<?php //Fichier de connexion à la bdd pour éviter d'avoir à la réécrire dans tous tes scripts //Démarrage session (versions of PHP >= 5.4.0 , PHP 7, PHP 8) if (session_status() === PHP_SESSION_NONE) { session_start(); } $conn= new mysqli('localhost','root','','media') //on vérifie qu'il n'y pas de soucis à la connexion à la bdd if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); exit(); } ?>
Fichier d'
<?php //PAGE D’EXEXUTION .php // On inclus le fichier de connexion à la bdd require_once 'cnxbdd.php'; if(!isset($_SESSION['unique_id'])){ header("location: index.php"); } // Vérifier si le formulaire est soumis if($texte){ //Utilisation des requêtes préparées pour éviter les failles de sécurités // Doc : https://www.w3schools.com/php/php_mysql_prepared_statements.asp $stmt = mysqli_prepare($conn, "INSERT INTO menu (name) VALUES (?)"); mysqli_stmt_bind_param($stmt, 's', $texte); $texte = !empty($_POST['texte']) ? trim($_POST['texte']) : null; if(!mysqli_stmt_execute($stmt)){ echo("Error description: " . mysqli_error($conn)); }else{ echo "Insertion OK"; } } else { echo "Aucune données à insérer en base !!! "; } "> <?php //PAGE D’AFFICHAGE ET LE FORMULAIRE // On inclus le fichier de connexion à la bdd require_once 'cnxbdd.php'; ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Acceuil</title> </head> <body> <form action=".php" method="post"> <label for="texte">Entrez votre texte :</label><br> <textarea id="texte" name="texte" rows="10" cols="50"></textarea><br> <input type="submit" value="Envoyer"> </form> <?php //AFFICHAGE SANS TABLE $rq=mysqli_query($conn,"select * from menu where name <> 'NULL' order by id desc limit 1 "); // ECHO LES DATAS; while ($row = mysqli_fetch_assoc($rq)){ echo "<br>" . $row['name']; } ?> <script src="tinymce/tinymce.min.js"></script> <script src="script.js"></script> </body> </html>
Il sied de signaler que, ses codes sources ????<p style="text-align: center;"><em><span style="text-decoration: underline;"><strong>test</strong></span></em></p>
Sont enregistrés avec les textes saisis via mon formulaire TinyMCE, dans un terme simple, les textes s'enregistrent et s'affichent dans le navigateur avec les codes sources de la mise forme comme dans un éditeur de texte.
Bonjour,
Ce que tu montres semble tout à fait normal.
Les données s'enregistrent correctement dans ta bdd...
Le souci, se situe donc au niveau de leur utilisation sur ton site...
Comment fais tu ? avec quel code ?
Je le faisais avec echo"$texte"; simplement et après une recherche j'ai trouvé ça ????
<?php
// Exemple de texte envoyé par TinyMCE (ou autre éditeur de texte)
texte = "<h1>Bienvenue</h1><p>Ceci est un <b>exemple</b> de texte avec des balises HTML autorisées.</p>";
// Liste des balises HTML autorisées allowed_tags = '<h1><h2><h3><h4><h5><b><i><u><strong><em><mark><p><br><span><blockquote><hr><pre><ul><ol><li><dl><dt><dd><table><tr><td><th><a><img>';
// Application strip_tags() pour show seulement les balises autorisées
texte_securise = strip_tags($texte, allowed_tags);
Mais, je n'arrive pas à l'appliquer, pour conserver la mise en forme comme dans l'aperçu de mon formulaire TinyMCE.
// Utiliser strip_tags() pour filtrer les balises HTML non autoriséestexte_securise =
strip_tags($texte);
mysqli_query($conn,"insert into menu(name)values('$texte')");
// Exécution de la requête
if ($conn='$texte') {
echo "Le texte a été ajouté avec succès à la base de données.";
} else {
echo "Une erreur est survenue lors de l'ajout du texte.";
}
?>
PAGE D’AFFICHAGE ET LE FORMULAIRE
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Acceuil</title>
</head>
<body>
<form action=".php" method="post">
<label for="texte">Entrez votre texte :</label><br>
<textarea id="texte" name="texte" rows="10" cols="50"></textarea><br>
<input type="submit" value="Envoyer">
</form>
<?php
$conn= new mysqli('localhost','root','','media')or die("Could not connect to mysql".mysqli_error($conn));
//AFFICHAGE SANS TABLE
$rq=mysqli_query($conn,"select * from menu where name <> 'NULL' order by id desc limit 1 ");
// ECHO LES DATAS;
while ($row = mysqli_fetch_assoc($rq)){
$texte=$row['name'];
?>
<br>
<?php
echo "$texte";
}
"></script>
<script src="script.js"></script>
</body>
</html>
PAGE D’EXEXUTION .php
<?php
session_start();
if(!isset($_SESSION['unique_id'])){
header("location: index.php");
}
$conn= new mysqli('localhost','root','','media')or die("Could not connect to mysql".mysqli_error($conn));
// Vérifier si le formulaire est soumis
$texte=addslashes($_POST['texte']);
$texte=htmlspecialchars($texte);
// Liste des balises HTML autorisées
// allowed_tags = '<h1><h2><h3><h4><h5><b><i><u><strong><em><mark><p><br><span><blockquote><hr><pre><ul><ol><li><dl><dt><dd><table><tr><td><th><a><img>';
// Utiliser strip_tags() pour filtrer les balises HTML non autoriséestexte_securise =
strip_tags($texte);
mysqli_query($conn,"insert into menu(name)values('$texte')");
// Exécution de la requête
if ($conn='$texte') {
echo "Le texte a été ajouté avec succès à la base de données.";
} else {
echo "Une erreur est survenue lors de l'ajout du texte.";
}
?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Allahou Akbar! Merci infiniment coach, jusqu'au point ou je manque le mot.
Gloire et louange à Celui qui a enseigné à l'homme ce qu'il ne savait pas.