tinymce

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

ervvan1
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 14 Mar 2008

tinymce

Message le Ven Mar 14, 2008 8:13

Bonjour,

Je souhaite utiliser tinymce pour un site en php. J'arrive a l'utiliser mais le problème est que j'aimerais que l'utilisateur puisse sauvegarder en ligne directement.
Comment puis-je procéder ?

Merci


e-kiwi
Modérateur
Modérateur
 
Messages: 15540
Inscription: 23 Déc 2003

Message le Ven Mar 14, 2008 8:43

et bien créer une base de données, une requête d insertion à la base de données après validation du formulaire, avec les contrôles adéquates. quel est ton niveau en php ?

ervvan1
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 14 Mar 2008

Message le Ven Mar 14, 2008 8:47

mes connaissances ne sont pas des plus terribles ;) j'avais déja vu un cms qui enregistrait directement dans un fichier txt, qui n'utilisait pas de BDD.. Qu'en pensez-vous ?
Dernière édition par ervvan1 le Ven Mar 14, 2008 10:22, édité 1 fois.

cha_cha
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 15
Inscription: 24 Sep 2006

Message le Ven Mar 14, 2008 9:41

Salut Erwan,
il faut bien différencier l'utilsiation de tinyMce et le stockage des données....
les problemes sont indépendants....

L'utilisation basique de TinyMce ne demande aucune connaissance ...
Toutes les configurations de base...aucune connaissance de base non plus...
Pour un comportement avance de tinyMce, bien sur, il te faudra des connaissance javascript pour le modifier.....

Mais pour le stockage de tes données...l'utilsation de TinyMce ne pose aucun espece de problème...je m'explique :
Tu dois créer un formulaire...puis enregistrer tes données... tinyMce ne fait que venir se greffer sur tes textarea...sans rien changer au formualire...
exemple : en rouge le code pour tinyMce :


ton formulaire de base :
<form action="adresse de ta page php ou autre qui va faire l'enregistrement" method="POST" name="addarticle">
<input type='text' name='article_title' id ='article_title' size='40'>
<textarea name='article_content' id ='article_content'></textarea>
</form>


en entete de tonfichier tu rajoutes le code pour tiny (ne pas utiliser celui là, il est configurer pour mon site, mais il y a des exemples http://wiki.moxiecode.com/examples/tinymce/installation_example_00.php )
tinyMCE.init({
//language: "fr",
// General options
mode : "textareas", theme : "advanced",
plugins : "safari,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,contextmenu,paste,directionality,fullscreen,noneditable,xhtmlxtras",

// Theme options
theme_advanced_buttons1 : "save,newdocument,|,undo,redo,|,cut,copy,paste,pastetext,pasteword,|,cleanup,removeformat,|,code,preview,fullscreen",
theme_advanced_buttons2 : "forecolor,backcolor,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,bullist,numlist,|,outdent,indent,blockquote,|,formatselect,fontselect,fontsizeselect",
theme_advanced_buttons3 : "link,unlink,anchor,|,image,media,|,insertdate,inserttime,|,sub,sup,|,charmap,emotions,iespell,advhr,|,styleprops,|,cite,abbr,acronym,del,ins,attribs|,fullscreen",
theme_advanced_buttons4 : "tablecontrols,|,hr,visualaid",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : true,

// Example content CSS (should be your site CSS)
content_css : "css/contentCyc.css",

// Drop lists for link/image/media/template dialogs
template_external_list_url : "lists/template_list.js",
external_link_list_url : "lists/link_list.js",
external_image_list_url : "lists/image_list.js",
media_external_list_url : "lists/media_list.js",

file_browser_callback : "fileBrowserCallBack",
//execcommand_callback : "myCustomExecCommandHandler",
debug : false,
convert_fonts_to_spans : true
});

function fileBrowserCallBack(field_name, url, type, win){
// This is where you insert your custom filebrowser logic
win.open("http://www.webarmenie.com/tools/medias/grenexplore.php", "", "scrollbars=0,resizable=0,width=800,height=600");
//alert("Example of filebrowser callback: field_name: " + field_name + ", url: " + url + ", type: " + type);
}

et la ligne rouge fera que tous tes textarea de la page seront des textarea avec tinyMCE dedans....
et ton problème reste donc le même, enregistrer les données...

Pour enregistrer tes données tu as plusieurs choix, tu préférerais le fichier texte parce que ca te parait moins compliqué, certes, mais des que ton fichier fera plusieurs dizaines de ligne, le traitement sera long, de plus, imaginiqe que tu dois enregistrer plusieurs information par ligne
nom de la personne, adresse de la personne, numéro de téléphone fixe, numéro de portable, etc....
tu va devoir les séparer par un séparateur, et apres récupérer chaque ligne , puis la couper suivant le séparateur et accéder à l'information numéro 3 (par exemple) c'est long, compliqué, et qui plus est tu ne pourra pas faire de tri complexes, sans recréé en mémoire une matrice en ayant lu toutes tes données.
Tandis qu'en DB c'est plus facile, 100 fois plus facile... voila....
tu fais ce que tu veux...mais vaut mieux prendre 4 heures pour comprendre et utiliser la db, faire du code facile a corriger et a comprendrE....

ervvan1
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 14 Mar 2008

Message le Ven Mar 14, 2008 10:12

Super !! Merci pour ta réponse très claire, je comprends mieux l'utilisation et c'est vrai que cela sera plus facile a gérer avec une BDD.
Je test et je te dis quoi ;)

ervvan1
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 14 Mar 2008

Message le Ven Mar 14, 2008 10:40

super ca marche !!

Mes données sont insérées dans une BDD MySql.

Question :

Comment dois-je faire pour modifier le texte qui est insérer dans la BDD ? tout en réutilisant tinyMce...

cha_cha
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 15
Inscription: 24 Sep 2006

Message le Ven Mar 14, 2008 12:53

1°) tu fait une requete pour recuperer tes enregistrements (Démo en PHP)
$query = "SELECT * FROM TA_TABLE";
2°)Tu te connectes a la base (tu as deja fait ca pour enregistrer dans la base)

3°) tu rempli ton recordset du style
$result = mysql_query($query); /// si tu as plusieurs enregistrements cad plusieurs lignes dans ta table

4°)Tu parcours tes enregistrements
while ($val = mysql_fetch_array($result)) {
->ici le code pour chacun des enregistrements....
}

5°) si on suppose que ton champ texte s'appele "identifiant" dans la table
alors
<textarea id='...' name='...'><?=$val["identifiant"]?></textarea>
$val etant défini a l'étape 4... tyniMCe se positionnera automatiquement dans ton textarea avec les valeurs de la db préremplis...tu les modifie, et tu soumet ton formulaire...
voilou

ervvan1
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 14 Mar 2008

Message le Dim Mar 16, 2008 20:31

voila j'y suis (enfin) arrivé ... :-)

voici ma page modification.php


<?
$host = 'localhost';
$user = '';
$pass = '';
$db = '';
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
$select = 'SELECT * FROM base';
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
if($total) {
echo '<textarea style="width:100%;height:500px;" id="article" name="article">'."\n";

while($row = mysql_fetch_array($result)) {

echo '<td bgcolor="#CCCCCC">'.$row["article"].'</td>';
echo '</tr>'."\n";
}
echo '</textarea>'."\n";
}
else echo 'Pas d\'enregistrements dans cette table...';
mysql_free_result($result);
?>


Encore quelques questions :

1) dans mon formulaire de départ, j'avais un INPUT TYPE="TEXT" , pour le titre de l'article, mais je n'arrive pas à l'intégrer dans mon fichier modification.php , si qqn a une solution....

2) comment faire pour enregistrer les modifications du texte ?

Merci à vous !


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par les experts Google Analytics de Ranking Metrics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité