Code d'accès

Résolu
bibiss1961 Messages postés 36 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 2 mai 2009 - 27 janv. 2009 à 12:01
bibiss1961 Messages postés 36 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 2 mai 2009 - 30 janv. 2009 à 10:37
Bonjour,

Je voudrais juste créer, pour les personnes qui le demande après avoir rempli un formulaire qui envoie un mail, un code d'accès qui sera toujours le même pour que la personne puisse avoir accès à une collection

donc

sur cette page il y aura
le logo de la marque
la zone pour taper son code
un bouton envoyer (qui l'amènera sur la 1re page de la collection

Pourriez-vous m'aider je ne veux pas créer de base de données j'ai juste besoin de cette page qui donne accès aux pages de collection

Merci

37 réponses

JulSoft Messages postés 354 Date d'inscription dimanche 3 juin 2001 Statut Membre Dernière intervention 11 mars 2013
29 janv. 2009 à 17:21
C'est ce qu'il me semblait. J'ai légèrement modifié le placement de ton code par rapport au bloc if (PHP) dans ma version corrigée, qui doit du coup renvoyer un résultat correct.
0
bibiss1961 Messages postés 36 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 2 mai 2009 1
29 janv. 2009 à 17:29
donc maintenant le bon code 'toto' fait la bonne action il va sur la page sécurisée déjà c'est génial

mais quand on tape un autre code j'ai la page verif.php toute noir et pas le message "Vous n'avec pas entré le bon code."

C'est presque bon
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
29 janv. 2009 à 17:31
J'avais dit une connerie pour le form, pas pour le background-color: #000000;
Supprime le ou mets ton texte dans une autre couleur.

Kohntark -
0
JulSoft Messages postés 354 Date d'inscription dimanche 3 juin 2001 Statut Membre Dernière intervention 11 mars 2013
29 janv. 2009 à 17:33
si tu reprend mon fichier de base, tu as 2 places avec des *** ***, la 1ere étant celle où tu places ton code si le code était bon, la 2eme étant celle ou tu place ce que tu veux afficher en cas de mauvais code
0

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

Posez votre question
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
29 janv. 2009 à 17:37
Le problème est qu'écrire noir sur noir ... heu, on voit rien
Je n'ai pas testé des masses mais le reste semble fonctionner;

Cordialement,

Kohntark-
0
bibiss1961 Messages postés 36 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 2 mai 2009 1
29 janv. 2009 à 17:50
je crois avoir résolu pas mal de problème

quand je ne tape rien dans le login j'ai un message "veuillez entrer votre code d'accès" ok

quand je tape le bon login 'toto' j'arrive bien sur la page sécurisée ok

mais c'est quand je tape un mauvais login j'ai un message "ce n'est pas le bon code d'accès" mais il va sur la page verif.php qui est noire !!!! je voudrais ce ça reste sur la page login

Je pense qu'il y a un problème dans le script de verif java :

<script type="text/javascript">
function verifFormulaire()
{
if(document.formulaire.login.value==''){
alert('Veuillez entrer votre code d\'accès');
}else{
document.formulaire.submit();
}

if(document.formulaire.login.value.indexOf('toto') == -1) {
alert("Ce n'est pas le bon code d\'accès!");
document.formulaire.login.focus();
return false;
}

}

Merci de m'aider nous sommes presque au bout !!!!
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
29 janv. 2009 à 18:14
[...]va sur la page verif.php qui est noire !!!!

.. normal hein ?

On peut revoir le code complet (je ne sais plus vraiment où tu en es)

Peut être :
<form method= "post" action="verif.php" name="formulaire">

=>
<form method="post" action="verif.php" name="formulaire" onsubmit="verifFormulaire()">


=>

function verifFormulaire()

{

if(document.formulaire.login.value==''){

alert('Veuillez entrer votre code d\'accès');

}else{

document.formulaire.submit();

}

if(document.formulaire.login.value.indexOf('toto') == -1) {

   alert("Ce n'est pas le bon code d\'accès!");

   document.formulaire.login.focus();

   return false;

  }

}

=>
function verifFormulaire()
{

 if (document.formulaire.login.value ==''){

   alert('Veuillez entrer votre code d\'accès');

   return false;
 }
 if (document.formulaire.login.value.indexOf('toto') == -1) {

   alert("Ce n'est pas le bon code d\'accès!");

   document.formulaire.login.focus();

   return false;

  }
}

Kohntark-
0
JulSoft Messages postés 354 Date d'inscription dimanche 3 juin 2001 Statut Membre Dernière intervention 11 mars 2013
29 janv. 2009 à 18:19
Oui, tu peux faire la véérification en JavaScript, mais alors ton code d'accès est disponible dans le code source de ta page, ce qui est franchement mauvais niveau sécurité. Le mieu est encore de rediriger le visiteur vers ta page de formulaire en cas de code erroné en php.

Voila ta page PHP (attention au placement des divers éléments en cas de modification!!!)

<?php
if(isset($_POST['login'])&&$_POST['login']=='toto'){
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta name="Desciption" content="robba vecchia, mode fillette">
<meta name="Keywords" content="robba vecchia, nathalie sadoune, vêtement fillette, mode enfant 6-12 ans, tribu robba vecchia, vêtement robba vecchia, robe fille, vêtement pré-ado, mode lolita, hippy chic, mode bohémienne, bohemian style, mode bohème, tricot fait main fillette, marque de vêtement fillette, marque de vêtement hippy chic fillette, robe du soir fillette, look branché pour fille, sarouel pour fille, mode romantique pour fillette">
<title>COLLECTION</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
-->
</style>
<script type="text/JavaScript">
<!--
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i[collection_new.html 
</map>

<map name="Map3" id="Map3">
  ]
[# 
]
[hiver_flash.html ]

</map>

</html> 
<?php
}else{
header('location: http://monsite.com/formulaire.html');
}
?>


Modifie juste 3 lignes avant la fin pour que l'url soit bien celle de ton formulaire.
0
bibiss1961 Messages postés 36 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 2 mai 2009 1
29 janv. 2009 à 19:04
j'ai modifidé les 3 lignes mais c'est tjs pareil je pense que ça vient du javascript verif

function verifFormulaire()
{
if(document.formulaire.login.value==''){
alert('Veuillez entrer votre code d\'accès');
}else{
document.formulaire.submit();
}

if(document.formulaire.login.value.indexOf('toto') == -1) {
alert("Ce n'est pas le bon code d\'accès!");
document.formulaire.login.focus();
return false;
}

}

parce que je reviens tjs sur la page noire !!!!!
0
JulSoft Messages postés 354 Date d'inscription dimanche 3 juin 2001 Statut Membre Dernière intervention 11 mars 2013
29 janv. 2009 à 19:12
Tu peux nous passer le code source de ta page "noire" stp (clic droit->afficher la source), histoire de voire ce qui ne se passe pas comme prévu stp?

Oui, il est possible de faire la vérification à travers JavaScript, mais il vaut VRAIMENT mieu éviter de le faire directement...
0
bibiss1961 Messages postés 36 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 2 mai 2009 1
29 janv. 2009 à 19:28
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta name="Desciption" content="robba vecchia, mode fillette" />
<meta name="Keywords" content="robba vecchia, nathalie sadoune, vêtement fillette, mode enfant 6-12 ans, tribu robba vecchia, vêtement robba vecchia, robe fille, vêtement pré-ado, mode lolita, hippy chic, mode bohémienne, bohemian style, mode bohème, tricot fait main fillette, marque de vêtement fillette, marque de vêtement hippy chic fillette, robe du soir fillette, look branché pour fille, sarouel pour fille, mode romantique pour fillette" />
<title>COLLECTION</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
-->
</style>
</head>

Vous n'avec pas entré le bon code.
0
bibiss1961 Messages postés 36 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 2 mai 2009 1
29 janv. 2009 à 19:31
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta name="Desciption" content="robba vecchia, mode fillette">
<meta name="Keywords" content="robba vecchia, nathalie sadoune, vêtement fillette, mode enfant 6-12 ans, tribu robba vecchia, vêtement robba vecchia, robe fille, vêtement pré-ado, mode lolita, hippy chic, mode bohémienne, bohemian style, mode bohème, tricot fait main fillette, marque de vêtement fillette, marque de vêtement hippy chic fillette, robe du soir fillette, look branché pour fille, sarouel pour fille, mode romantique pour fillette">
<title>COLLECTION</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
-->
</style>
<script type="text/JavaScript">
<!--
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
</head>




Vous n'avec pas entré le bon code.


</html>
0
JulSoft Messages postés 354 Date d'inscription dimanche 3 juin 2001 Statut Membre Dernière intervention 11 mars 2013
29 janv. 2009 à 19:48
Tu n'as apparemment pas la dernière version que j'ai modifiée...
0
bibiss1961 Messages postés 36 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 2 mai 2009 1
29 janv. 2009 à 19:49
TOUT MARCHE A MERVEILLE C'EST SUPER !!!!! MERCI BEAUCOUP POUR VOTRE AIDE PRECIEUSE

j'aurais juste une toute petite dernière question

quand je mets un code erronée je reste bien sur la page formulaire mais je n'ai pas d'alert "votre code est erroné" puis-je le rajouter à

<?php
}else{
header('location: http://www.designmedia.fr/robba/hiver_1bis.html');
}
?>
</html> donc les 3 dernières lignes de mon fichier verif.php

merci
0
JulSoft Messages postés 354 Date d'inscription dimanche 3 juin 2001 Statut Membre Dernière intervention 11 mars 2013
29 janv. 2009 à 20:27
Non. La fonction header() en php permet (entre autre) de rediriger le visiteur, Ce que j'ai fait ici est de le rediriger vers la page d'origine si le code est mauvais. Il n'est cependant pas possible (en tout cas par ce moyen là) de modifier le contenu de la page vers laquelle on redirige le visiteur.

Pour rajoutter une alerte, il serait par exemple possible de faire comme ça:

- Renomer le fichier contenant le formulaire pour en faire un fichier .php
- Ajoutter ensuite le code suivant pour afficher un message d'erreur en cas de mauvais code. (Code à insérer là ou tu veux que ton message s'affiche)

<?php
if(isset($_GET['erreur'])){
echo 'Mauvais code entré!';
}
?>

enfin appeller légèrement différamment la page lors de la redirection (dans verif.php)

<?php
}else{
header('location: http://www.designmedia.fr/robba/hiver_1bis.php?erreur=1');
}
?>

Voila (c'est habituellement un peu comme ça que je fais quand je fais un système d'authentification pour indiquer une erreur de la part de mon visiteur).
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
29 janv. 2009 à 21:30
Je n'ai pas regardé de près la dernière modif.
@bibiss
J'ajoute juste ce message pour exposer brièvement une autre méthode qui me parait plus simple et surtout beaucoup plus flexible.
Je ne t'apprends peut être rien, mais tu devrais utiliser les sessions. Le but est juste d'attirer ton attention sur leur existence, si je parle dans le vide tant pis :o)
Le script de julSoft est "parfait", mais dès qu'il s'agit d'apporter la moindre petite modif tu es rapidement obligée de passer par des trucs pas très logiques. C'est le cas ici pour afficher un simple message 'votre mot de passe n'est pas valide' :
formulaire (mot de passe erroné) => header => page sécurisée => header => formulaire (allés retours qui n'ont pas lieu d'être)
Dans le dernier header tu es en plus obligée d'ajouter des variables à l'url et de les traiter par la suite.

Ca ne pose aucun problème pour ce que tu as à faire dans l'immédiat mais si, un jour ou l'autre, tu décides de personnaliser la navigation et/ou de la sécuriser un peu plus, tu devrais dès lors utiliser les sessions (c'est une bonne manière de les mettre en pratique de façon simple)
Par exemple, sur la même page :

<?php
session_start();

if (isset([post pass])) {
  if ([post_pass] == 'toto') {
    $_SESSION['pass'] = true;
    header("Location: [page sécurisée]");
    exit;
  } else $err = true;
}
?>

[formulaire]
<?php
if (isset($err)) echo 'Le mot de passe est invalide';
?>

Dans la page sécurisée et toutes celle qui doivent l'être :
(en tout début de page)
<?php
session_start();
if (!isset($_SESSION['pass'])) header("Location: [page où se trouve le formulaire]");
?>

Une fois de plus, si tu es certaine de te limiter à un simple mot de passe pour une seule page la solution donnée par JulSoft convient à merveille, mais si ton site relève du eCommerce (dixit tes keywords), tu auras besoin tôt ou tard de sécuriser plusieurs pages, d'identifier unitairement tes visiteurs, de t'interfacer avec une base de données, de faire des stats, des payements en ligne, de proposer des promotions ciblées à certains clients, etc ... etc ...

Voili voilou, je voulais être concit, c'est un peu loupé :)

Bonne soirée,

Kohntark -
0
bibiss1961 Messages postés 36 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 2 mai 2009 1
30 janv. 2009 à 10:37
Je remercie kohntark et JulSoft pour leur aide. Mon site est enfin prêt à mettre en ligne et vraiment sans vous je ne m'en serais pas sortie. Peut-être à charge de revanche bien que je me sentes toute petite à côté de vos compétences A bientôt sur CodesSources Merci encore
0
Rejoignez-nous