Problème formulaire

Fermé
TNTintegret - Modifié par TNTintegret le 2/07/2010 à 17:54
naoufal118 Messages postés 74 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 11 juillet 2010 - 2 juil. 2010 à 18:28
Bonjour,

J'ai un problème avec un formulaire; je ne sais pas où placer la ligne <form method="POST" action="url"> , sachant que je souhaite que le texte taper modifie le fichier "data.txt".

voila le code de la page :

<?php
//Mise à jours dans le fichier
if(isset($_POST['textarea']))
{
if(($fichier =@fopen('data.txt','w'))!==false)
{
$str=stripslashes($_POST["textarea"]);
fputs($fichier,$str);
fclose($fichier);
}
}

//Lecture du fichier et copié dans la variable encienTexte -->
$encienTexte = "";
if(($fichier=@fopen('data.txt','r'))!==false)
{
while(!feof($fichier))
{
$encienTexte.=fgets($fichier, 255);
}
fclose($fichier);
}
?>
<p><style type="text/css">
.ttpetit { font-size: xx-small; }
.tpetit { font-size: x-small; }
.petit { font-size: small; }
.gros { font-size: large; }
.tgros { font-size: x-large; }
.ttgros { font-size: xx-large; }
</style>
<script type="text/javascript">
<!--
function insertTag(startTag, endTag, textareaId, tagType) {
var field = document.getElementById(textareaId);
var scroll = field.scrollTop;
field.focus();


if (window.ActiveXObject) {
var textRange = document.selection.createRange();
var currentSelection = textRange.text;
} else {
var startSelection = field.value.substring(0, field.selectionStart);
var currentSelection = field.value.substring(field.selectionStart, field.selectionEnd);
var endSelection = field.value.substring(field.selectionEnd);
}

if (tagType) {
switch (tagType) {
case "lien":
endTag = "</lien>";
if (currentSelection) {
if (currentSelection.indexOf("[http://]") == 0 || currentSelection.indexOf("[https://]") == 0 || currentSelection.indexOf("[ftp://]") == 0 || currentSelection.indexOf("www.") == 0) {
var label = prompt("Quel est le libellé du lien ?") || "";
startTag = "<lien url=\"" + currentSelection + "\">";
currentSelection = label;
} else {
var URL = prompt("Quelle est l'url ?");
startTag = "<lien url=\"" + URL + "\">";
}
} else {
var URL = prompt("Quelle est l'url ?") || "";
var label = prompt("Quel est le libellé du lien ?") || "";
startTag = "<lien url=\"" + URL + "\">";
currentSelection = label;
}
break;
case "citation":
endTag = "</citation>";
if (currentSelection) {
if (currentSelection.length > 30) {
var auteur = prompt("Quel est l'auteur de la citation ?") || "";
startTag = "<citation nom=\"" + auteur + "\">";
} else {
var citation = prompt("Quelle est la citation ?") || "";
startTag = "<citation nom=\"" + currentSelection + "\">";
currentSelection = citation;
}
} else {
var auteur = prompt("Quel est l'auteur de la citation ?") || "";
var citation = prompt("Quelle est la citation ?") || "";
startTag = "<citation nom=\"" + auteur + "\">";
currentSelection = citation;
}
break;
}
}

if (window.ActiveXObject) {
textRange.text = startTag + currentSelection + endTag;
textRange.moveStart('character', -endTag.length-currentSelection.length);
textRange.moveEnd('character', -endTag.length);
textRange.select();
} else { // Ce n'est pas IE
field.value = startSelection + startTag + currentSelection + endTag + endSelection;
field.focus();
field.setSelectionRange(startSelection.length + startTag.length, startSelection.length + startTag.length + currentSelection.length);
}

field.scrollTop = scroll;
}

function preview(textareaId, previewDiv) {
var field = textareaId.value;
if (document.getElementById('previsualisation').checked && field) {

var smiliesName = new Array(':magicien:', ':colere:', ':diable:', ':ange:', ':ninja:', '>_<', ':pirate:', ':zorro:', ':honte:', ':soleil:', ':\'\\(', ':waw:', ':\\)', ':D', ';\\)', ':p', ':lol:', ':euh:', ':\\(', ':o', ':colere2:', 'o_O', '\\^\\^', ':\\-°');
var smiliesUrl = new Array('magicien.png', 'angry.gif', 'diable.png', 'ange.png', 'ninja.png', 'pinch.png', 'pirate.png', 'zorro.png', 'rouge.png', 'soleil.png', 'pleure.png', 'waw.png', 'smile.png', 'heureux.png', 'clin.png', 'langue.png', 'rire.gif', 'unsure.gif', 'triste.png', 'huh.png', 'mechant.png', 'blink.gif', 'hihi.png', 'siffle.png');
var smiliesPath = "http://www.siteduzero.com/Templates/images/smilies/";

field = field.replace(/&/g, '&');
field = field.replace(/</g, '<').replace(/>/g, '>');
field = field.replace(/\n/g, '<br />').replace(/\t/g, ' ');

field = field.replace(/<gras>([\s\S]*?)<\/gras>/g, '<strong>$1</strong>');
field = field.replace(/<italique>([\s\S]*?)<\/italique>/g, '<em>$1</em>');
field = field.replace(/<lien>([\s\S]*?)<\/lien>/g, '<a href="$1">$1</a>');
field = field.replace(/<lien url="([\s\S]*?)">([\s\S]*?)<\/lien>/g, '<a href="$1" title="$2">$2</a>');
field = field.replace(/<image>([\s\S]*?)<\/image>/g, '<img src="$1" alt="Image" />');
field = field.replace(/<citation nom=\"(.*?)\">([\s\S]*?)<\/citation>/g, '<br /><span class="citation">Citation : $1</span><div class="citation2">$2</div>');
field = field.replace(/<citation lien=\"(.*?)\">([\s\S]*?)<\/citation>/g, '<br /><span class="citation"><a href="$1">Citation</a></span><div class="citation2">$2</div>');
field = field.replace(/<citation nom=\"(.*?)\" lien=\"(.*?)\">([\s\S]*?)<\/citation>/g, '<br /><span class="citation"><a href="$2">Citation : $1</a></span><div class="citation2">$3</div>');
field = field.replace(/<citation lien=\"(.*?)\" nom=\"(.*?)\">([\s\S]*?)<\/citation>/g, '<br /><span class="citation"><a href="$1">Citation : $2</a></span><div class="citation2">$3</div>');
field = field.replace(/<citation>([\s\S]*?)<\/citation>/g, '<br /><span class="citation">Citation</span><div class="citation2">$1</div>');
field = field.replace(/<taille valeur=\"(.*?)\">([\s\S]*?)<\/taille>/g, '<span class="$1">$2</span>');

for (var i=0, c=smiliesName.length; i<c; i++) {
field = field.replace(new RegExp(" " + smiliesName[i] + " ", "g"), " <img src=\"" + smiliesPath + smiliesUrl[i] + "\" alt=\"" + smiliesUrl[i] + "\" /> ");
}

document.getElementById(previewDiv).innerHTML = field;
}
}

function getXMLHttpRequest() {
var xhr = null;

if (window.XMLHttpRequest || window.ActiveXObject) {
if (window.ActiveXObject) {
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
} else {
xhr = new XMLHttpRequest();
}
} else {
alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
return null;
}

return xhr;
}


function view(textareaId, viewDiv){
var content = encodeURIComponent(document.getElementById(textareaId).value);
var xhr = getXMLHttpRequest();

if (xhr && xhr.readyState != 0) {
xhr.abort();
delete xhr;
}

xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200){
document.getElementById(viewDiv).innerHTML = xhr.responseText;
} else if (xhr.readyState == 3){
document.getElementById(viewDiv).innerHTML = "<div style=\"text-align: center;\">Chargement en cours...</div>";
}
}

xhr.open("POST", "preview.php", true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.send("string=" + content);
}

//-->
</script>
</head>
<body>
<div id="main">

<form action="" method="post">
<div>

<form method="POST" action="http://halohotel.free.fr/site/index2.php"><p>
<input type="button" value="Gras" onclick="insertTag('<strong>', '</strong>', 'textarea')" />
<input type="button" value="Passer une ligne" onclick="insertTag('<br>', ' ', 'textarea')" />
<input type="button" value="Italique" onclick="insertTag('<i>', '</i>', 'textarea')" />
<input type="button" value="Lien" onclick="insertTag('', '', 'textarea', 'lien')" />
<input type="button" value="Image" onclick="insertTag('<img>', '</img>', 'textarea')" />
<input type="button" value="Citation" onclick="insertTag('', '', 'textarea', 'citation')" />


<select onchange="insertTag('<taille valeur="' + this.options[this.selectedIndex].value + '">', '</taille>', 'textarea');">
<option value="none" class="selected" selected="selected">Taille</option>
<option value="ttpetit">Très très petit</option>
<option value="tpetit">Très petit</option>
<option value="petit">Petit</option>
<option value="gros">Gros</option>
<option value="tgros">Très gros</option>
<option value="ttgros">Très très gros</option>
</select>

<img src="http://users.teledisnet.be/offline.html" alt=":)" onclick="insertTag(' :) ', '', 'textarea');" />
<img src="http://users.teledisnet.be/offline.html" alt=":euh:" onclick="insertTag(' :euh: ', '', 'textarea');" />
</p>

<p>
<input name="previsualisation" type="checkbox" id="previsualisation" value="previsualisation" />
<label for="previsualisation">Prévisualisation automatique</label>
</p>

</div>

<textarea onkeyup="preview(this, 'previewDiv');" onselect="preview(this, 'previewDiv');" id="textarea" cols="150" rows="10"><?php
echo $encienTexte;
?></textarea>

<div id="previewDiv"></div>

<p>
<input type="button" value="Visualiser" onclick="view('textarea','viewDiv');" />
</p>

<div id="viewDiv"></div>


</div>

<!-- Bouton d\'envoi -->
<br /><br />
<input type="submit" value="Enregistrer !" />
</p>
</form>

Merci d'avance !

6 réponses

naoufal118 Messages postés 74 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 11 juillet 2010
2 juil. 2010 à 18:04
Bon voila comment tu dois proceder
<form method="post" action="ton url ou (fichier)">
<textarea>le nom de ce champ</textarea>
<input type="submit" value="le nom de ton bouton d'envoi"></input>
</form> 

Cordialement
0
naoufal118 Messages postés 74 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 11 juillet 2010
2 juil. 2010 à 18:09
j'ai ublié un truk
tu dois ajouter cela dans la balise textarea (la modifier):
<textarea name="le nom que tu veux">le nom de ce champ</textarea>

Ensuite tu peux récupérer les informations tappé dans ta textarea dans le fichier que tu veux en y mettant un petit script PHP du genre :
<?php echo $_POST['le nom que tu veux(celui que tu attribué à l'attribut name dans la text area)']; ?>

Cordiallement.
0
Merci, je vais esseyer :)

Edit : ['le nom que tu veux(celui que tu attribué à l'attribut name dans la text area)'] : je met le nom que je veut, puis entre parenthèse le nom du textarea ?
0
Les deux cas marche pas...

Help me please !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
naoufal118 Messages postés 74 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 11 juillet 2010
2 juil. 2010 à 18:26
bahhhh nn du tt.
0
naoufal118 Messages postés 74 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 11 juillet 2010
2 juil. 2010 à 18:28
je veux dire pas (nom que tu veux) : tu dois choisir un nom qui va etre comme iddentifiant pour ta balise <textarea> pour que tu puisse extraire les donné que as tapé et envoyé avec le bouton d'envoi avce la variable superglobale $_POST['']
0