J'ai ce code pour copier une textarea.
Mais j'aimerai que la valeur change dans le code JS ,comme l'ID de la textarea et du bouton en php.
Code : Tout sélectionner
<?php
// Set session variables
setlocale(LC_TIME, 'fra_fra');
$timezone = +2; //(GMT +2:00) EST (F.R. & PARIS)
$date = '['.gmdate("j/m/Y H:i:s", time() + 3600*($timezone+date("I"))).']';
$version = "[Version_2.02]";
$code= "[ADC_END]";
// Traitement du code pour le checksum.
$chaine = $_SESSION['Start'];
//le checksum ressemble à un CRC32.
//En php il suffit d'appeler la fonction crc32 :
$checksum = crc32($chaine);
// Cela génère un entier.
// Représentation héx= adécimal:faire un dechex :
$str = dechex($checksum);
$_SESSION['END'] ='['.$str.']'.$date.$version.$code;
$_SESSION["Balises3"] = $_SESSION['Balises3'].$_POST['balise'];
if(isset ($_SESSION['TabInter'])){
for($ligne=0;$ligne<sizeof($_SESSION['TabInter']);$ligne++)
{
$txt=1;
$btn=1;
$js=1;
$_SESSION['ValueInter']= $_SESSION['Start'].$_SESSION['TabInter'][$ligne].$_SESSION['Balises3'].$_SESSION['Balises4'].'['.$str.']'.$date.$version.$code;
$txt = $ligne;
$btn = $ligne;
$js = $ligne;
?>
<table align="center">
<tr align="center">
<td>
<form id="form-copier" >
<!-- //champ de saisie de texte -->
<textarea id="<?php $txt; ?>" cols="80" rows="3"disabled="disabled"><?php print_r($_SESSION['ValueInter']) ?></textarea>
<!-- //Bouton copier -->
<input type="button" class="<?php $js; ?>" id="<?php $btn; ?>" value="Copier la chaîne" onclick="this.disabled = 'disabled';this.type='checkbox';this.checked='checked'">
</form>
</td>
</tr>
</table>
<?PHP
print_r($txt);
print_r($btn);
print_r($js);
?>
// Traitement du copier de la Textarea
<script>
(() => {
var constBtn = <?php echo json_encode($btn); ?>;
var constTxt = <?php echo json_encode($txt); ?>;
const button = document.querySelector('<?php echo ($btn); ?>');
button.addEventListener("click", () => {
const elemText = document.getElementById('<?php echo ($txt); ?>');
// supprimer l'attribut disabled si existe
const disabled = elemText.getAttribute("disabled");
elemText.removeAttribute("disabled");
// selectionne le contenu
elemText.focus();
elemText.select();
// copy
document.execCommand("copy");
// réactive l'attribut disabled si existe
disabled && elemText.setAttribute("disabled", disabled);
// remise focus sur Btn
button.focus();
try {
if (document.execCommand('copy')) {
var alerte="Champs Work Notes* "
alert('La chaine des Balises a été copié ! \n\r Il suffit de la coller dans le ' + alerte + 'de ServiceNow.');
//document.location.replace('pagefin.php');
}
} catch (err) {
alert('Pas possible de copier.');
}
window.getSelection().removeAllRanges();
});
})();
</script>
<?PHP
}
}
?>