GanJasTeR
Messages postés27Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention31 mai 2007
-
22 janv. 2007 à 10:25
GanJasTeR
Messages postés27Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention31 mai 2007
-
22 janv. 2007 à 13:43
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 ^^
GanJasTeR
Messages postés27Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention31 mai 2007 22 janv. 2007 à 11:03
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>
GanJasTeR
Messages postés27Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention31 mai 2007 22 janv. 2007 à 11:39
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''
. '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.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 22 janv. 2007 à 11:49
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 :-)) )
<hr /> Cordialement Bul
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 22 janv. 2007 à 13:10
j'ai oublié de dire aussi :
et que se passe-t-il pour les utilisateurs qui interdisent JavaScript ?
ce n'est pas à négliger : ils sont plus nombreux que ceux qui utilisent
FireFox par exemple ( enfin, aujourd'hui )
<hr /> Cordialement Bul
GanJasTeR
Messages postés27Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention31 mai 2007 22 janv. 2007 à 13:43
Et bien pour ces rares élus ils pourront copier coller le code de confirmation ^^
Ce n'est pas dramatique le principe est d'éviter que des bots spam mon site au niveau des inscriptions.
Donc tant qu il y a le code tout va bien après impossible à sélectionner est un bonus pour montrer que le webmaster à réfléchi (et s'est fait aidé merci encore ;) )
GanJasTeR
Messages postés27Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention31 mai 2007 22 janv. 2007 à 13:43
Et bien pour ces rares élus ils pourront copier coller le code de confirmation ^^
Ce n'est pas dramatique le principe est d'éviter que des bots spam mon site au niveau des inscriptions.
Donc tant qu il y a le code tout va bien après impossible à sélectionner est un bonus pour montrer que le webmaster à réfléchi (et s'est fait aidé merci encore ;) )