begin process at 2012 05 29 15:54:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript et le navigateur

 > 

Autre

 > 

javascript


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

javascript

mercredi 23 juin 2010 à 14:25:28 | javascript

remyhoussem

<script>
function checkcc(){

failed=false
Str=document.cc.number.value
newStr=''
card=''

month_index = document.cc.exp_month.selectedIndex
exp_month = document.cc.exp_month.options[month_index].text

year_index = document.cc.exp_year.selectedIndex
exp_year = document.cc.exp_year.options[year_index].text

d=new Date()
cur_month = d.getMonth() + 1
cur_year = d.getYear() + 1900

//Le type de la carte
if(document.cc[0].checked){card="master"}
if(document.cc[1].checked){card="visa"}
if(document.cc[2].checked){card="amex"}

if (card=='') {
error("Vous n\'avez pas choisi le type de carte")
return
}

//Date d'expiration
if (exp_year < cur_year) {
error("La carte a expiré")
return
}

if ((exp_year == cur_year) && (exp_month < cur_month)) {
error("La carte a expiré")
return
}
//Suppression des espaces et autre
for (var k = 0; k < Str.length; k++){
var oneChar = Str.charAt(k)
if ((oneChar != " ") && (oneChar != "-")) {
newStr += Str.charAt(k)
}
}
//Verifie le chiffre numerique
for (var k = 0; k < newStr.length; k++){
var oneChar = newStr.charAt(k)
if (oneChar < "0" || oneChar > "9") {
error("caractères invalides dans le numéro.")
return
}
}
//nombre de chiffres de la carte

if(card == "visa"){
if((newStr.length != "13") && (newStr.length != "16")){
error("nombre de chiffres incorrect.")
return
}

}
if(card == "master"){
if(newStr.length != "16"){
error("nombre de chiffres incorrect.")
return
}
}
if(card == "amex"){
if(newStr.length != "15"){
error("nombre de chiffres incorrect.")
return
}
}
//verifier Mod 10
if(newStr.length == "13"){len13()}
if(newStr.length == "15"){len15()}
if(newStr.length == "16"){len16()}


// si toutes les tests passés
if (!failed){
//whatever redirection is necessary goes here
alert("Le numéro de carte de crédit est valide.")
}
}//Fin de la fonction checkcc

function len13(){
cc0 = newStr.charAt(0)
cc1 = newStr.charAt(1)
cc2 = newStr.charAt(2)
cc3 = newStr.charAt(3)
cc4 = newStr.charAt(4)
cc5 = newStr.charAt(5)
cc6 = newStr.charAt(6)
cc7 = newStr.charAt(7)
cc8 = newStr.charAt(8)
cc9 = newStr.charAt(9)
cc10 = newStr.charAt(10)
cc11 = newStr.charAt(11)
cc12 = newStr.charAt(12)

cc1a = cc1 * 2
cc3a = cc3 * 2
cc5a = cc5 * 2
cc7a = cc7 * 2
cc9a = cc9 * 2
cc11a = cc11 * 2
if(cc1a >= 10) {
cc1a=cc1a.toString()
cc1b = cc1a.charAt(0)
cc1c = cc1a.charAt(1)
cc1 = parseFloat(cc1b) + parseFloat(cc1c)
}
else {
cc1 = cc1a
}
if(cc3a >= 10) {
cc3a=cc3a.toString()
cc3b = cc3a.charAt(0)
cc3c = cc3a.charAt(1)
cc3 = parseFloat(cc3b) + parseFloat(cc3c)
}
else {
cc3 = cc3a
}
if (cc5a >= 10) {
cc5a=cc5a.toString()
cc5b = cc5a.charAt(0)
cc5c = cc5a.charAt(1)
cc5 = parseFloat(cc5b) + parseFloat(cc5c)
}
else {
cc5 = cc5a
}
if (cc7a >= 10) {
cc7a=cc7a.toString()
cc7b = cc7a.charAt(0)
cc7c = cc7a.charAt(1)
cc7 = parseFloat(cc7b) + parseFloat(cc7c)
}
else {
cc7 = cc7a
}
if (cc9a >= 10) {
cc9a=cc9a.toString()
cc9b = cc9a.charAt(0)
cc9c = cc9a.charAt(1)
cc9 = parseFloat(cc9b) + parseFloat(cc9c)
}
else {
cc9 = cc9a
}
if (cc11a >= 10) {
cc11a=cc11a.toString()
cc11b = cc11a.charAt(0)
cc11c = cc11a.charAt(1)
cc11 = parseFloat(cc11b) + parseFloat(cc11c)
}

else {
cc11 = cc11a
}
value = 0
value +=parseFloat(cc0)
value +=parseFloat(cc1)
value +=parseFloat(cc2)
value +=parseFloat(cc3)
value +=parseFloat(cc4)
value +=parseFloat(cc5)
value +=parseFloat(cc6)
value +=parseFloat(cc7)
value +=parseFloat(cc8)
value +=parseFloat(cc9)
value +=parseFloat(cc10)
value +=parseFloat(cc11)
value +=parseFloat(cc12)
value=value.toString()
if (value.charAt(1) != 0){
error("Numero de carte invalide.")
return
}
}
function len15(){
cc0 = newStr.charAt(0)
cc1 = newStr.charAt(1)
cc2 = newStr.charAt(2)
cc3 = newStr.charAt(3)
cc4 = newStr.charAt(4)
cc5 = newStr.charAt(5)
cc6 = newStr.charAt(6)
cc7 = newStr.charAt(7)
cc8 = newStr.charAt(8)
cc9 = newStr.charAt(9)
cc10 = newStr.charAt(10)
cc11 = newStr.charAt(11)
cc12 = newStr.charAt(12)
cc13 = newStr.charAt(13)
cc14 = newStr.charAt(14)

cc1a = cc1 * 2
cc3a = cc3 * 2
cc5a = cc5 * 2
cc7a = cc7 * 2
cc9a = cc9 * 2
cc11a = cc11 * 2
cc13a = cc13 * 2

if(cc1a >= 10) {
cc1a=cc1a.toString()
cc1b = cc1a.charAt(0)
cc1c = cc1a.charAt(1)
cc1 = parseFloat(cc1b) + parseFloat(cc1c)
}
else {
cc1 = cc1a
}

if(cc3a >= 10) {

cc3a=cc3a.toString()
cc3b = cc3a.charAt(0)
cc3c = cc3a.charAt(1)
cc3 = parseFloat(cc3b) + parseFloat(cc3c)
}

else {
cc3 = cc3a
}

if (cc5a >= 10) {
cc5a=cc5a.toString()
cc5b = cc5a.charAt(0)
cc5c = cc5a.charAt(1)
cc5 = parseFloat(cc5b) + parseFloat(cc5c)
}

else {
cc5 = cc5a
}

if (cc7a >= 10) {
cc7a=cc7a.toString()
cc7b = cc7a.charAt(0)
cc7c = cc7a.charAt(1)
cc7 = parseFloat(cc7b) + parseFloat(cc7c)
}
else {
cc7 = cc7a
}

if (cc9a >= 10){
cc9a=cc9a.toString()
cc9b = cc9a.charAt(0)
cc9c = cc9a.charAt(1)
cc9 = parseFloat(cc9b) + parseFloat(cc9c)
}
else {
cc9 = cc9a
}
if (cc11a >= 10) {
cc11a=cc11a.toString()
cc11b = cc11a.charAt(0)
cc11c = cc11a.charAt(1)
cc11 = parseFloat(cc11b) + parseFloat(cc11c)
}
else {
cc11 = cc11a
}

if (cc13a >= 10) {
cc13a=cc13a.toString()
cc13b = cc13a.charAt(0)
cc13c = cc13a.charAt(1)
cc13 = parseFloat(cc13b) + parseFloat(cc13c)
}

else {
cc13 = cc13a
}

value = 0
value +=parseFloat(cc0)
value +=parseFloat(cc1)
value +=parseFloat(cc2)
value +=parseFloat(cc3)
value +=parseFloat(cc4)
value +=parseFloat(cc5)
value +=parseFloat(cc6)
value +=parseFloat(cc7)
value +=parseFloat(cc8)
value +=parseFloat(cc9)
value +=parseFloat(cc10)
value +=parseFloat(cc11)
value +=parseFloat(cc12)
value +=parseFloat(cc13)
value +=parseFloat(cc14)

value=value.toString()

if (value.charAt(1) != 0) {

error("Numéro de carte invalide.")
return
}
}
function len16() {
cc0 = newStr.charAt(0)
cc1 = newStr.charAt(1)
cc2 = newStr.charAt(2)
cc3 = newStr.charAt(3)
cc4 = newStr.charAt(4)
cc5 = newStr.charAt(5)
cc6 = newStr.charAt(6)
cc7 = newStr.charAt(7)
cc8 = newStr.charAt(8)
cc9 = newStr.charAt(9)
cc10 = newStr.charAt(10)
cc11 = newStr.charAt(11)
cc12 = newStr.charAt(12)
cc13 = newStr.charAt(13)
cc14 = newStr.charAt(14)
cc15 = newStr.charAt(15)

cc0a = cc0 * 2
cc2a = cc2 * 2
cc4a = cc4 * 2
cc6a = cc6 * 2
cc8a = cc8 * 2
cc10a = cc10 * 2
cc12a = cc12 * 2
cc14a = cc14 * 2

if(cc0a >= 10) {
cc0a=cc0a.toString()
cc0b = cc0a.charAt(0)
cc0c = cc0a.charAt(1)
cc0 = parseFloat(cc0b) + parseFloat(cc0c)
}
else {
cc0 = cc0a
}

if(cc2a >= 10) {

cc2a=cc2a.toString()
cc2b = cc2a.charAt(0)
cc2c = cc2a.charAt(1)
cc2 = parseFloat(cc2b) + parseFloat(cc2c)
}

else {
cc2 = cc2a
}

if (cc4a >= 10) {
cc4a=cc4a.toString()
cc4b = cc4a.charAt(0)
cc4c = cc4a.charAt(1)
cc4 = parseFloat(cc4b) + parseFloat(cc4c)
}

else {
cc4 = cc4a
}

if (cc6a >= 10) {
cc6a=cc6a.toString()
cc6b = cc6a.charAt(0)
cc6c = cc6a.charAt(1)
cc6 = parseFloat(cc6b) + parseFloat(cc6c)
}

else {
cc6 = cc6a
}

if (cc8a >= 10) {
cc8a=cc8a.toString()
cc8b = cc8a.charAt(0)
cc8c = cc8a.charAt(1)
cc8 = parseFloat(cc8b) + parseFloat(cc8c)
}

else {
cc8 = cc8a
}

if (cc10a >= 10) {
cc10a=cc10a.toString()
cc10b = cc10a.charAt(0)
cc10c = cc10a.charAt(1)
cc10 = parseFloat(cc10b) + parseFloat(cc10c)
}
else {
cc10 = cc10a
}

if (cc12a >= 10) {
cc12a=cc12a.toString()
cc12b = cc12a.charAt(0)
cc12c = cc12a.charAt(1)
cc12 = parseFloat(cc12b) + parseFloat(cc12c)
}

else {
cc12 = cc12a
}
if (cc14a >= 10) {
cc14a=cc14a.toString()
cc14b = cc14a.charAt(0)
cc14c = cc14a.charAt(1)
cc14 = parseFloat(cc14b) + parseFloat(cc14c)
}

else {
cc14 = cc14a
}

value = 0
value +=parseFloat(cc0)
value +=parseFloat(cc1)
value +=parseFloat(cc2)
value +=parseFloat(cc3)
value +=parseFloat(cc4)
value +=parseFloat(cc5)
value +=parseFloat(cc6)
value +=parseFloat(cc7)
value +=parseFloat(cc8)
value +=parseFloat(cc9)
value +=parseFloat(cc10)
value +=parseFloat(cc11)
value +=parseFloat(cc12)
value +=parseFloat(cc13)
value +=parseFloat(cc14)
value +=parseFloat(cc15)

value=value.toString()

if (value.charAt(1) != 0) {

error("numéro de carte invalide.")
return
}

}

function error(msg) {
alert(msg)
failed=true
}
</script>



c'est koi ce code un javascript ou koi je ne le comprebds pa il'y t'il quelqu'un qui peut m'aider
mercredi 23 juin 2010 à 17:20:40 | Re : php

PascalCmoa

Membre Club
Réponse acceptée !

Bonjour,

Effectivement c'est bien du javascript (on le voit en regardant les balises de départ et de fin), ensuite ce qu'il fait, il faut lire le code tout simplement. Je dirai a vu de nez et en 1ere lecture qu'il fait une vérification de carte bleu nan ???

PascalCmoa
email: PascalCmoa
mercredi 23 juin 2010 à 18:56:52 | Re : php

ghuysmans99

Membre Club
Manque plein de point-virgules mais sinon ça va. Et des morceaux de ce code peuvent être optimisés.

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
jeudi 24 juin 2010 à 10:53:51 | Re : javascript

remyhoussem

merci PascalCmoa mais pouvez vous m'aidez un peu ou me donnez au moins une idéé générale sur les fonctions je n'ai rien compris de ce code
jeudi 24 juin 2010 à 11:04:09 | Re : javascript

ghuysmans99

Membre Club
Quel est ton problème avec ce code : tu ne comprends pas comment il fonctionne ou tu ne comprends pas pourquoi il ne fonctionne pas ?

Idée générale sur les fonctions : [ Lien ]

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
jeudi 24 juin 2010 à 15:36:05 | Re : javascript

remyhoussem

je ne comprend pas comment il fonctionne pouvez vous m'aider stp


Cette discussion est classée dans : value, parsefloat, charat, newstr, if


Répondre à ce message

Sujets en rapport avec ce message

Pb Javascript Input Text [ par Pipininho ] Bonjour, J'ai un pb avec le script suivant. Normalement, il devrait permettre de saisir une date rapidement, les slashs s'ajoutant automatiquement. Ce parseFloat [ par zarroukImed ] voila j'ai eu qlq desagrement avec parseFloat (jsp). recuperant des donnee numerique sous forme de String (3 chiffre apres la virgule)de la base et av Probleme de variables [ par shelko ] Bonjour, Je débute en javascript. Dans le cadre d'un stage je suis en train de faire un ptit script en javascript qui fait des calcul en récupérant de controler plusieurs champs d'un formulaire [ par attentio ] Bonjour,j'ai une fonction qui verifie tous les champs d'un formulaire qui ne marche pasje ne comprends vraiment pas pourquoi ?si je mets   if(document CAMERA IP [ par ermaub ] Bonjour,Je ne suis ni programmateur, ni pratiquant je n'oserais me qualifier comme debutant, je connais le principe de la programation, les différents Affiche nombre [ par jumano ] Bonjour,J'effectue une petite fonction en js me permettant d'effectuer certain calcul en fonction de "radio" en position check.Je récupère ensuite une Code javascript fonctionne mal avec Firefox [ par leclanalucky ] Voici mon problème, se code qui formate la date fonctionne parfaitement avec IE, mais avec Firefox il ne marche pas bien, la date devrait ressnbler à Javascript tester un champ qui ne doit contenir que des lettre [ par pho3nixhunt3r ] Bonjour à tous,alors voilà je suis en train de rédigé un formulaire,pour la vérification du numéro de téléphone j'utilise isNaN,existe t' il  son oppo Que pensez de mon formulaire. Petits soucis lors de l'envoie [ par chaudlesmarrons ] Voilà mon soucis, le bouton envois ne marche, dnc je reçois rien.Si quelqu'un peut m'aider? (je suis débutant)Mon code :<script type="text/javascrip test case à cochée [ par patlechats ] salut,je voudrais sur un formulaire rendre obligatoire la coche de case à cocher, mais aussi de pouvoir n'en cocher que 2 maximum. j'ai réalisé un pro


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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 : 1,045 sec (4)

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