fel på recaptcha efter en tids användande

PHPportalen Forum Index » PHP Mjukstart
Lägg ett bokmärke på hela tråden
Skapa nytt inlägg   Svara på inlägget
Visa föregående ämne :: Visa nästa ämne  
Startad av: Meddelande
wonderwizard



Medlem i: 6557 dagar

Status: Offline



#742740
Inlägg Skrivet: 2020-03-25 07:32      Ämne: fel på recaptcha efter en tids användande Citera

jag har haft en fungerande recaptcha på min sida
nu funkar den inte, har jag varit o pillat i koden utan att se eller komma ihåg ?

den skickar inte trots validering


KOD:
1:
   if (isset($_POST['g-recaptcha-response'])) {
2:
      
3:
      require('component/recaptcha/src/autoload.php');      
4:
      
5:
      $recaptcha = new \ReCaptcha\ReCaptcha(SECRET_KEY, new \ReCaptcha\RequestMethod\SocketPost());
6:
 
7:
      $resp = $recaptcha->verify($_POST['g-recaptcha-response'], $_SERVER['REMOTE_ADDR']);
8:
 
9:
        if (!$resp->isSuccess()) {
10:
            $output = json_encode(array('type'=>'error', 'text' => ''.$config ['contact']['captcha'].''));
11:
            die($output);            
12:
        }   
13:
   }
 
Till toppen på sidan
Visa användarprofil Skicka privat meddelande MSN Messenger
harald_b
Moderator



Medlem i: 5205 dagar
Från: Tavesta
Status: Offline



#742741
Inlägg Skrivet: 2020-03-25 12:36      Ämne: Citera

Jag har inte helt koll på hur ReCaptcha är avsedd att användas, men här ser det ut som om resultatet blir det samma om g-recaptcha-response skickas, och är rätt, eller om g-recaptcha-response inte skickas alls.
Det tycker jag inte ser rätt ut.

Vad är det som inte skickas, trots validering?
Jag gissar att felet kan finnas senare i koden än den biten du visar.
 

_________________
R.r - Ett fritt affärssystem
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
wonderwizard



Medlem i: 6557 dagar

Status: Offline



#742742
Inlägg Skrivet: 2020-03-25 19:27      Ämne: Citera

harald_b skrev:
Jag har inte helt koll på hur ReCaptcha är avsedd att användas, men här ser det ut som om resultatet blir det samma om g-recaptcha-response skickas, och är rätt, eller om g-recaptcha-response inte skickas alls.
Det tycker jag inte ser rätt ut.

Vad är det som inte skickas, trots validering?
Jag gissar att felet kan finnas senare i koden än den biten du visar.


tar jag bort koden, så postas mailet oavsett om recaptcha är ifylld eller ej.
med koden, fast jag bockar i rutan, så skickas det inte
 
Till toppen på sidan
Visa användarprofil Skicka privat meddelande MSN Messenger
harald_b
Moderator



Medlem i: 5205 dagar
Från: Tavesta
Status: Offline



#742743
Inlägg Skrivet: 2020-03-25 21:30      Ämne: Citera

Prova att kommentera bort all kod i if-blocket, och sedan ta bort bortkommenteringen, rad för rad, och se vilken rad det är som får den att inte skicka.
 

_________________
R.r - Ett fritt affärssystem
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
LimpanDSS



Medlem i: 2974 dagar
Från: Stockholm
Status: Offline



#742744
Inlägg Skrivet: 2020-03-27 16:39      Ämne: Citera

Skulle gissa på att det blivit något strul med din SECRET_KEY. Skulle gå in i Google Devs o kolla att den är giltig. Nyckeln mappas alltid till en viss adress (URL), så har du bytt adress eller kör localhost så kommer det inte fungera.

Annars skulle jag kolla ReCaptcha biblioteket ifråga, kan vara att de pillat i det och du har outdated version. Rekommenderar att installera den via Composer istället för manuell autoloading för att hålla den uppdaterad enklare.

Kolla output på $resp.
 

_________________
Github
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
wonderwizard



Medlem i: 6557 dagar

Status: Offline



#742750
Inlägg Skrivet: 2020-04-04 21:28      Ämne: Citera

LimpanDSS skrev:
Skulle gissa på att det blivit något strul med din SECRET_KEY. Skulle gå in i Google Devs o kolla att den är giltig. Nyckeln mappas alltid till en viss adress (URL), så har du bytt adress eller kör localhost så kommer det inte fungera.

Annars skulle jag kolla ReCaptcha biblioteket ifråga, kan vara att de pillat i det och du har outdated version. Rekommenderar att installera den via Composer istället för manuell autoloading för att hålla den uppdaterad enklare.

Kolla output på $resp.


redan uppdaterat key på google kontot.. inte där felet är

tog bort följande
Citat:

//reCAPTCHA validation
if (isset($_POST['g-recaptcha-response'])) {

require('component/recaptcha/src/autoload.php');

$recaptcha = new \ReCaptcha\ReCaptcha(SECRET_KEY, new \ReCaptcha\RequestMethod\SocketPost());

$resp = $recaptcha->verify($_POST['g-recaptcha-response'], $_SERVER['REMOTE_ADDR']);

if (!$resp->isSuccess()) {
$output = json_encode(array('type'=>'error', 'text' => ''.$config ['contact']['captcha'].''));
die($output);
}
}


SECRET_KEY = defined i settings.php


med ovan kod borttaget, så funkar det att posta mail, alla fält skall vara ifyllda, men recaptcha behöver inte vara bockad, mailet skickas ändå
 
Till toppen på sidan
Visa användarprofil Skicka privat meddelande MSN Messenger
harald_b
Moderator



Medlem i: 5205 dagar
Från: Tavesta
Status: Offline



#742753
Inlägg Skrivet: 2020-04-05 13:32      Ämne: Citera

Då börjar du med att sätta tillbaka raden
PHP:
1:
 if (isset($_POST['g-recaptcha-response'])) {  

och tillhörande
PHP:
1:
 


Om det fortfarande fungerar att posta sätter du tillbaka raden
PHP:
1:
 require('component/recaptcha/src/autoload.php');  


och så fortsätter du tills du ser vad det är som får det att inte fungera.
 

_________________
R.r - Ett fritt affärssystem
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
wonderwizard



Medlem i: 6557 dagar

Status: Offline



#742754
Inlägg Skrivet: 2020-04-05 17:15      Ämne: Citera

harald_b skrev:
Då börjar du med att sätta tillbaka raden
PHP:
1:
 if (isset($_POST['g-recaptcha-response'])) {  

och tillhörande
PHP:
1:
 


Om det fortfarande fungerar att posta sätter du tillbaka raden
PHP:
1:
 require('component/recaptcha/src/autoload.php');  


och så fortsätter du tills du ser vad det är som får det att inte fungera.


detta hade jag redan gjort, men inte närmare lösningen tyvärr
nedan ligger problemet, men jag ser det inte

KOD:
1:
 
2:
if (!$resp->isSuccess()) {
3:
    $output = json_encode(array('type'=>'error', 'text' => ''.$config ['contact']['captcha'].''));
4:
die($output);            
5:
}   
6:
 
 
Till toppen på sidan
Visa användarprofil Skicka privat meddelande MSN Messenger
harald_b
Moderator



Medlem i: 5205 dagar
Från: Tavesta
Status: Offline



#742755
Inlägg Skrivet: 2020-04-05 20:46      Ämne: Citera

Då ser det ju ut som det är själva valideringen som fallerar.

Jag har som sagt inte helt koll på hur ReCaptcha är avsedd att användas, men det finns alltid en del du kan testa med:

Får du ut något om du kör var_dump($resp); ?
Får du ut något om du kör var_dump($recaptcha); ?
Får du ut något om du kör var_dump(new \ReCaptcha\RequestMethod\SocketPost()); ?
 

_________________
R.r - Ett fritt affärssystem
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
Visa tidigare inlägg:   
Skapa nytt inlägg   Svara på inlägget
PHPportalen Forum Index » PHP Mjukstart
Hoppa till:  
Du kan inte skapa nya inlägg i det här forumet
Du kan inte svara på inlägg i det här forumet
Du kan inte ändra dina inlägg i det här forumet
Du kan inte ta bort dina inlägg i det här forumet
Du kan inte rösta i det här forumet
Du kan inte bifoga filer i detta forum
Du kan inte ladda ner filer från detta forum
Kontakta oss på adressen: info@phpportalen.net
Webbplatsen bygger i grunden på phpBB © 2001, 2002 phpBB Group

Modifieringar har senare gjorts i systemet av PHPportalen
Sid och logotypdesign skapad av Daren Jularic