begin process at 2010 02 10 05:43:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

Désactiver la sélection d'un texte


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Désactiver la sélection d'un texte

lundi 22 janvier 2007 à 10:25:17 | Désactiver la sélection d'un texte

GanJasTeR

Bonjour.

J'aimerais obliger les visiteurs de mon site à rentrer un code de confirmation se trouvant sur la page d'inscription.
Généralement ce code est une image créee dynamiquement en PHP.

Pour faire simple j'ai pensé qu'un texte étant impossible de sélectionner donc de copier était beaucoup plus facile à réaliser.

J'ai une ébauche :)
Toute personne ayant déjà voulu faire ca à déja vu ce code :p

function disableselect(e){
   return false
  }
  function reEnable(){
   return true
  }
  document.onselectstart=new Function ("return false")
  if (window.sidebar){
   document.onmousedown=disableselect
   document.onclick=reEnable
  }

Mon problème est que ce code désactive la sélection de tout le texte de ma page or j'aimerais qu'il s'occupe d'un texte spécifique.

Vous allez me dire de mettre ce texte dans un div et de remplacer document par document.getElementById mais cela ce marche pas il ne reconnais pas l'id que je lui donne.

Si quelqu'un a une solution je suis preneur :)
Merci ^^
lundi 22 janvier 2007 à 10:52:24 | Re : Désactiver la sélection d'un texte

bultez

Membre Club




Bonjour,

    °     ce code désactive la sélection de tout le texte de ma page ,
           j'aimerais qu'il s'occupe d'un texte spécifique.
                 onselectstart sur l'élement pas sur le document.
   °      il ne reconnais pas l'id
                 franchement aucune raison... mais sans le moindre petit
                 bout de code : Hein.gif

                                Cordialement               Bul     [home.gifmon Site]         [Mail.GIFM'écrire]
lundi 22 janvier 2007 à 11:03:32 | Re : Désactiver la sélection d'un texte

GanJasTeR

   onselectstart sur l'élement pas sur le document.

Voudrais tu dire document.getElementById("").onselectstart ?
Cela ne marche pas non plus.
En effet je n'ai pas montré tout le code car il comporte pas mal de PHP et j'ai pensé que sur ce forum ce n'était pas approprié. Enfin le voici

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html xmlns="
http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  <script type="text/javascript">
  function disableselect(e){
   return false
  }
  function reEnable(){
   return true
  }
  document.getElementByName("codepass").onselectstart=new Function ("return false")
  if (window.sidebar){
   document.getElementByName("codepass").onmousedown=disableselect
   document.getElementByName("codepass").onclick=reEnable
  }
  </script>
 </head>
 <body>
 <?php
 function random($car) {
  $string = "";
  $chaine = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
  srand((double)microtime()*1000000);
  for($i=0; $i<$car; $i++) {
   $string .= $chaine[rand()%strlen($chaine)];
  }
  return $string;
 } 
 $_SESSION['codepass'] = random(8);
 echo'<input type="text" name="codepass" value="'.$_SESSION['codepass'].'" />';
 ?>
 </body>
</html>

Il s'agit de la page code.src.php que j'inclu dans la page membres.php dont voici un extrait :

  . '<tr><td><label>Mail :</label></td><td><input type="text" name="mail" value="" size="30" maxlength="50" /></td></tr>'
  . '<tr><td colspan="2"><p style="text-align:center;">'
  require('includes/code.src.php')
  .'<tr><td><label>Code :</label></td><td><input type="text" name="code" value="" size="10" maxlength="8" /></td></tr>';

Voilà si le problème parait plus expliqué tant mieu
lundi 22 janvier 2007 à 11:07:44 | Re : Désactiver la sélection d'un texte

GanJasTeR

Désolé j'ai copier coller sans penser au fait qu'il s'agissait d'une version du même problème dans le fond mais pas dans la forme :)

Voici la partie modifiée dans le fichier code.src.php (juste avant les fermetures </body> et </html> :

 $_SESSION['codepass'] = random(8);
 echo'<div id="codepass" name="code"><?php echo $_SESSION['codepass']; ?> />';

Désolé pour le double post :)
lundi 22 janvier 2007 à 11:12:50 | Re : Désactiver la sélection d'un texte

bultez

Membre Club
il vaudrait mieux donner la page htmml générée que le php,
mais déjà tu utilise
document.getElementByName
utilise document.getElementById("id_voulu") en mettant dans la balise
<input text id="id_voulu"... />

                                    Cordialement                Bul             [mon Site]     [M'écrire]
lundi 22 janvier 2007 à 11:18:06 | Re : Désactiver la sélection d'un texte

bultez

Membre Club
on peut aussi mettre onselectstart dans cette balise
"input text", directement...

                                Cordialement        Bul         [mon Site]     [M'écrire]
lundi 22 janvier 2007 à 11:39:09 | Re : Désactiver la sélection d'un texte

GanJasTeR

Non cela ne marche toujours pas. J'ai tout insérer sur une seule page ; voici ma page de récupération de mot de passe :

function pass(){
 open_table('Récupération de votre pass');
 ?>
 <script language="Javascript 1.2">
  <!--
  function disableselect(e){
   return false
  }
  function reEnable(){
   return true
  }
  document.getElementById("codepass").onselectstart=new Function ("return false")
  if (window.sidebar){
   document.getElementById("codepass").onmousedown=disableselect
   document.getElementById("codepass").onclick=reEnable
  }
  //-->
  </script>

 <?php
 session_register("codepass");
 if(isset($_POST['lostpass'])){
  echo $_SESSION['codepass'];
 }
 else{
  echo'<p style="padding-top:20px;padding-left:20px;">'
  . 'Pour récupérer votre mot de passe, rentrez votre adresse mail et copiez les 8 caractères dans le champ prévu à cet effet.<br /><br />'
  . '<form method="post" action="membres.php?act=pass" onsubmit="return(verif_code(this))">'
  . '<table border="0" cellspacing="0" cellpadding="5">'
  . '<tr><td><label>Mail :</label></td><td><input type="text" name="mail" value="" size="30" maxlength="50" /></td></tr>'
  . '<tr><td colspan="2"><p style="text-align:center;">';
  $_SESSION['codepass'] = random(8);
  ?><input type="text" id="codepass" name="codepass" value="<?php echo $_SESSION['codepass']; ?>" /><?php
  echo'<tr><td><label>Code :</label></td><td><input type="text" name="code" value="" size="10" maxlength="8" /></td></tr>'
  . '<tr><td colspan="2"><p style="text-align:center"><input type="image" src="design/images/bt_go.gif" />'
  . '<input type="hidden" name="lostpass" /></p></td></tr></table></form>';
 }
 close_table(); 
}

Voila je pense que cette tentative est logiquement forcée de marcher...mais non :)
lundi 22 janvier 2007 à 11:49:21 | Re : Désactiver la sélection d'un texte

bultez

Membre Club






j'insiste : mais la page générée ! pas le php !
on ne sait pas ce que contiennent les variables, la base de données...

et pour ici, malgré tout, tu tente d'accéder à un élément qui n'existe pas encore.
n'oublies pas que le html,javascript... interprète les lignes de la page
les unes après les autres, en séquence de la 1ère à la dernière.
quand tu fais document.getElementById... la balise n'est pas encore créée.
met l'ordre javascript après la balise ( ou la balise avant si tu préfères :-)) )

                                    Cordialement                Bul         [mon Site]     [M'écrire]
lundi 22 janvier 2007 à 11:52:07 | Re : Désactiver la sélection d'un texte

bultez

Membre Club
il faut lire "les navigateurs interprètent le html/javascript..."

                                            Cordialement                Bul             [mon Site]     [M'écrire]
lundi 22 janvier 2007 à 12:11:12 | Re : Désactiver la sélection d'un texte

GanJasTeR

Bon j'ai fait une page a par en html contenant le problème simplifié :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html xmlns="
http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
 <head>
  <title>Titre</title>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  <link rel="stylesheet" media="screen" type="text/css" title="code" href="code.css" />
  <script type="text/javascript">
  function disableselect(e){
   return false
  }
  function reEnable(){
   return true
  }
  document.getElementById("code_pass").onselectstart=new Function ("return false")
  if (window.sidebar){
   document.getElementById("code_pass").onmousedown=disableselect
   document.getElementById("code_pass").onclick=reEnable
  }
  </script>
 </head>
 <body>

<form method="post" action="membres-pass.html">
<input type="text" id="code_pass" name="code" value="code" />
</form>
 

 </body>
</html>

Verdict cela ne fonctionne toujours pas :)


1 2

Cette discussion est classée dans : code, texte, sélection, document, return


Répondre à ce message

Sujets en rapport avec ce message

Comment Griser pleins de controles (checkbox) en une boucle ??? [ par SnowAngeL ] je fais une fonction avec une boucle pour griser des controles d'un formulaire, c'est utile et moins long à charger quand on a 50 controles à griser.. recupérer le code html d'une selection [ par caviar ] Saluté ! j'ai un petit pb tout bête ...j'aimerai récupérer le code html selectionné lorsqu'un utilisateur fait un surlignage sur ma page ...par exempl Code HTML d'une sélection [ par jdmcreator ] Bonjour, Après plusieurs heures de recherches infructueuses sur Google, je pose ici ma question. J'aimerais savoir si on peut récupérer le code HTML Problème d'ajout de texte dans un textearea [ par Moritus ] Bonjour, J'ai quelque petit soucis avec un bout de code. J'aimerais ajouter du texte dans un textearea lorsque je clique sur un bouton. J'ai trouv mettre une iframe dans un tableau (une cellule) [ par adris ] Bonjour, je suis entrain de réaliser un éditeur WYSIWYG. [u]Pour IE :[/u] j'écris le texte dans la balise div et j'arrive à la mettre dans le tableau descendre un texte... [ par mlies ] Hello, On m'a donné un joli coup de main pour améliorer l'affichage d'une photo en plein écran. Le souci c'est que maintenant le texte qui venait pa Aide a la création d'une fonction [ par kyoku59 ] Bonjour. Voila j'ai cette fonction : [code=js] function heures() { var tabHeure= new Array("01","02","03", "04", "05","06","07", "08" decrypter le javascript [ par majong ] Bonjour je suis tombé sur un code suivant: [code=js]eval(function(p,a,c,k,e,r){e=function(c){return(c35?String.fromCharCode(c+28):c.toString(20))};if( Pb évènement onClick avec Firefox [ par Bugger24 ] Bonjour à tous, Voila, j'ai un petit souci. J'ai une page web contenant trois boutons radio et deux zone de saisie. En fonction du bouton radio sélec Notice Index : probleme récurant [ par klmload ] Bonjour à tous :) Je suis débutant dans les langages du WEB, et suis un étudiant ayant pris une option pour apprendre à créer des site web. Bref, -


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,468 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales