Bonjour,
j'ai ce code la :
Code Javascript :
<script type="text/javascript">
<!--
function ajouter()
{
var input = document.getElementById('texte'); // on place dans la variable input le contenu de la balise dont l'id est 'texte'
var liste = document.getElementById('liste');
nouvel_element = new Option(input.value, input.value, false, false); // on récupère ce qui a été rentré dans la zone de texte
liste.options[liste.length] = nouvel_element; // insertion du nouvel élément à la fin de la liste
input.value = ''; // ré-initialisation variable input
setHiddenValue();
}
function effacer()
{
var liste = document.getElementById('liste');
var cptselect = 0;
for(i = 0; i < liste.length; i++)
{
// on cherche l'élément sélectionné pour passer cptselect à 1 et passer dans le deuxième if
if(liste.options[i].selected == true)
{
cptselect++;
}
if(cptselect > 0)
{
for(i = 0; i < liste.length; i++)
{
if(liste.options[i].selected == true) // lorsqu'on trouve l(es) élément(s) à supprimer
{
liste.options[i] = null; // on remplace l(es) élément(s) trouvé(s) par une chaîne vide
}
}
effacer(); // on fait appel à cette même fonction pour effacer directement dans la liste (pris en compte une fois enregistré)
}
}
setHiddenValue();
}
function setHiddenValue()
{
var liste = document.getElementById('liste');
var values = new Array();
for(j = 0; j < liste.length; j++)
{
values[values.length] = liste.options[j].innerHTML;
}
document.getElementById('hidden').value = values.join("\n");
}
//-->
</script>
Suivi de :
Code PHP :
<?php
if(isset($_POST['textarea']))
{
if(is_file($fic_act) && is_writable($fic_act)) // si le fichier existe et qu'il est accessible en écriture
{
file_put_contents($fic_act, trim($_POST['textarea'])); // insertion de données dans 'activites.txt'
}
else
{
die("Le fichier n'existe pas ou est protégé en écriture!");
}
}
if(is_file($fic_act) && is_readable($fic_act)) // si le fichier existe et qu'il est accessible en lecture
{
$lignes = file($fic_act, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); // on place le fichier dans un tableau
}
else
{
die("Le fichier n'existe pas ou est protégé en lecture !");
}
?>
Et des input type / textarea:
Code PHP :
<input type="button" value="Ajouter" style="width:130px" onClick="ajouter()">
<select size=10 name="liste" id="liste" style="width:130px" multiple="multiple">
<?php foreach($lignes as $ligne):?> <!-- chaque ligne -->
<option><?php echo trim($ligne);?></option> <!-- est affichée dans une liste déroulante-->
<?php endforeach;?>
</select>
<input type="hidden" name="textarea" id="hidden" value=""/>
<input type="button" value="Supprimer" style="width:130px" onClick="effacer()">
<input type="button" value="Annuler" Onclick="javascript:window.history.go(0)"> <!-- réactualisation de la page en cliquant sur le bouton 'Annuler' -->
<input type="submit" value="Enregistrer"/>
Mon probleme réside sur le dernier de type submit qui consiste à enregistrer, lorsque je clique plusieurs fois dessus, il me supprime tout le contenu de mon texarea (textarea qui affiche ce qui est contenu dans mon fichier texte) ...
De plus j'aimerais empecher l'ajout de valeur vide.
J'ai cherché en vain ... Merci
mageek