Avatar billede Calle5463 Forsker
27. december 2016 - 22:21 Der er 10 kommentarer og
1 løsning

Out of order ....

Jeg har lidt javascript som ikke fungere (det gjorde det, men jeg må ha' ændret et eller andet, men kan ikke greje hvad)

Kan jeg slå et eller andet til, så jeg kan følge afviklingen af programmet trin-for-trin?
Eller hvordan skal jeg gå frem manuelt?


<script type="text/javascript">
function checkForm(form) {
    if(document.getElementById('0').checked) {
        alert('Du skal vælge en type medlemsskab for at kunne indsende din anmodning.');
        form.medlemsskab.focus();
        return false;
    }
   
  if(!form.captcha.value.match(/^\d{5}$/)) {
      alert('Venligst indtast tallene i CAPTCHA-boksen');
      form.captcha.focus();
      return false;
    }
    return true;
   
    if(form.pwd1.value != "" && form.pwd1.value == form.pwd2.value) {
        if(form.pwd1.value.length < 8) {
            alert("Error: Password skal være på mindst 8 karakterer");
            form.pwd1.focus();
            return false;
        }
        if(form.pwd1.value == form.email.value) {
            alert("Error: Password må ikke være en emailadresse");
            form.pwd1.focus();
            return false;
        }
        re = /[0-9]/;
        if(!re.test(form.pwd1.value)) {
            alert("Error: Password skal indeholde mindst et tal (0-9)");
            form.pwd1.focus();
            return false;
        }
        re = /[a-z]/;
        if(!re.test(form.pwd1.value)) {
            alert("Error: Password skal indeholde midst et lille bogstav (a-z)");
            form.pwd1.focus();
            return false;
        }
        re = /[A-Z]/;
        if(!re.test(form.pwd1.value)) {
            alert("Error: Password skal indeholde mindst et stort bogstav (A-Z)");
            form.pwd1.focus();
            return false;
        }
        } else {
        alert("Error: Check at du har indtastet og gentaget password");
        form.pwd1.focus();
        return false;
        }

    alert("Der er indtastet et godkendt password: " + form.pwd1.value);
    return true;
}

function yesnoCheck() {
    if(document.getElementById('yesCheck').checked) {
        document.getElementById('ifYes').style.display = 'block';
    } else {
        document.getElementById('ifYes').style.display = 'none';       
    }
}
</script>
Avatar billede olsensweb.dk Ekspert
27. december 2016 - 22:42 #1
har du et link til siden hvor det anvendes ??

har du set i console.log (del af browserens udviklings værktøj (F12)) om den viser nogle js fejl ??
>if(document.getElementById('0').checked) {
id plejer ikke starte med tal, jeg kunne fristes til at tro det var index af et array
findes id 0 ??

>Out of order ....
hvad, hvor, hvilke linje ??
Avatar billede Calle5463 Forsker
27. december 2016 - 23:10 #2
#1 Glædelig bagjul

Det cykler på en localhost, og jeg kommer hele vejen med formularen og videre i programmet. Alt gemmes og emails sendes. Men ingen reaktion på forkert gentaget password og forkert indtastet captcha

Har lige prøvet at smide den if "væk" du peger på - det gjorde ingen forskel - desværre

console viser ikke nogen fejl (svjks - der står ihvertfald ikke error nogen steder)

Lige nu trænger jeg til bare at få bare en eller anden alert fra javascriptet!!
Avatar billede Calle5463 Forsker
27. december 2016 - 23:11 #3
#1 "Out of order", ja undskyld, det var bare mine ord, ikke programmets ....der kom lige en nisse forbi
Avatar billede keysersoze Guru
27. december 2016 - 23:25 #4
Prøv at kom med lidt mere kode eller læg det online så vi kan teste det.
Avatar billede Calle5463 Forsker
27. december 2016 - 23:40 #5
Det er captcha-tjekket den er gal med. Efter jeg flyttede det i bund, virker de andre tjek
Avatar billede keysersoze Guru
27. december 2016 - 23:54 #6
Hvad benytter du som captcha?
Avatar billede Calle5463 Forsker
28. december 2016 - 00:11 #7
#6, nedenviste kode - som jeg kraftigt overvejer at udskifte med noget wordpress plugin/google-et-eller-andet

Det virker i øvrigt, bortset fra tjekket i javascript'et

<?PHP
  // Adapted for The Art of Web: www.the-art-of-web.com
  // Please acknowledge use of this code by including this header.

  // initialise image with dimensions of 120 x 30 pixels
  $image = @imagecreatetruecolor(110, 50) or die("Cannot Initialize new GD image stream");

  // set background to white and allocate drawing colours
  $background = imagecolorallocate($image, 0xFF, 0xFF, 0xFF);
  imagefill($image, 0, 0, $background);
  $linecolor = imagecolorallocate($image, 0xCC, 0xCC, 0xCC);
  $textcolor = imagecolorallocate($image, 0x33, 0x33, 0x33);

  // draw random lines on canvas
  for($i=0; $i < 6; $i++) {
    imagesetthickness($image, rand(1,3));
    imageline($image, 0, rand(0,50), 300, rand(0,50), $linecolor);
  }

  session_start();

  // add random digits to canvas
  $digit = '';
  for($x = 15; $x <= 95; $x += 20) {
    $digit .= ($num = rand(0, 9));
    imagechar($image, rand(3, 5), $x, rand(2, 14), $num, $textcolor);
  }

  // record digits in session variable
  $_SESSION['digit'] = $digit;

  // display image and clean up
  header('Content-type: image/png');
  imagepng($image);
  imagedestroy($image);
?>
Avatar billede keysersoze Guru
28. december 2016 - 00:34 #8
ah - skal lige læse hvad der reelt står. Du må ikke return true medmindre du skal springe ud af dine checks - og det gør du umiddelbart efter dit captcha check.
Avatar billede Calle5463 Forsker
28. december 2016 - 11:16 #9
#8 - arh, logik for høns! Jeg har ryddet lidt op og nu virker den del.

Så er jeg tilbage ved en "pind" jeg har haft stående et stykke tid og håber at løse lige pludselig: Det er lidt træls, at bruger bliver smidt helt ud af formularen og skal starte forfra bare fordi der er tastet et enkelt tal forkert. Det skal jeg have ændret til noget tre forsøg inden bruger "smides" væk fra formularen.
Avatar billede keysersoze Guru
28. december 2016 - 11:32 #10
Noget din PHP gør? Det er ikke lige mit bord :)
Avatar billede Calle5463 Forsker
28. december 2016 - 11:44 #11
#10 - ja, det skyldes denne for simple linie:

  if($_POST['captcha'] != $_SESSION['digit']) die("Beklager, den indtastede CAPTCHA-kode var ikke korrekt");
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester