Just nu i M3-nätverket
Gå till innehåll

Googles nya recaptcha tutorial behöver hjälp


byllan1337

Rekommendera Poster

Hej, som ni säkert redan vet så har google utvecklat captcha till recaptcha istället. Det innebär nu att man måste checka av i checkboxen och så kontrollerar den ifall man är en bot/robot, om den bli misstänktsam så får man skriva i bokstäver och siffror istället. 

I allafall, jag har svårt för detta med att göra en check så att usern har kryssat eller skrivit i googles recaptcha och jag förstår inte riktigt deras tutorial. Är det någon här som skulle vilja hjälpa mig att förklara när man ska kolla detta med secret, response och remoteip!

Källa: https://developers.google.com/recaptcha/docs/verify

Nya recaptcha: https://www.google.com/recaptcha/intro/index.html

 

Min php fil!

 

<?php
echo "captcha säkerhet<br>";

function sec($username, $password, $password2, $mail, $regdate, $age, $country, $rules, $recaptcha) {
$msr = mysqli_real_escape_string($username, $password, $password2, $mail, $regdate, $age, $country, $rules, $recaptcha);
return $msr;


if(isset($_POST['regbutton'])) {
	$username = sec($_POST['username']);
	$password = $_POST['password'];
	$password2 = $_POST['password2'];
	$mail = $_POST['mail'];
	$regdate = date("Y-m-d");
	$age = $_POST['age'];
	$country = $_POST['country'];
	$rules = $_POST['rules'];
	$recaptcha = $_POST['g-recaptcha'];
	$regbutton = $_POST['regbutton'];
}}

$reg_error = array();

// Does the passwords match?
if ($_POST['password'] != $_POST['password2']) 
		{$reg_error[0] = "Passwords do not match!<br>";}

// Any field empty?
if (empty($_POST['username']) or empty($_POST['password']) || 
		empty($_POST['password2']) || empty($_POST['mail']) or empty($_POST['g-recaptcha']) ) {
			$reg_error[1] = "You forgot to fill something!<br>"; 
}

//Checkbox empty?
if (!isset($_POST['rules'])){
$reg_error[2] = "You forgot to accept our rules<br>";
}

// Does Username already exist in db?
$query = mysqli_query($connect, "SELECT * FROM users WHERE username = '$username'");
		$result = mysqli_num_rows($query);

if ($result > 0) {
		$reg_error[3] = "Username already exist!<br>";}

// Does E-Mail already exist in db?
$secquery = mysqli_query($connect, "SELECT * FROM users WHERE email = '$mail'");
		$result2 = mysqli_fetch_row($secquery);

if($result2 > 0){
		$reg_error[4] = "Email already exist!<br>";
}

// Check Email
if(!filter_var($_POST['mail'], FILTER_VALIDATE_EMAIL)) {
		$reg_error[5] = "Something is wrong with the E-mail<br>";}
		
// Count letters in password
if(strlen($_POST['password']) < 5){
$reg_error[6] = "You need atleast 5 characters in your password!<br>";
}

//Check if person are over 18
if($_POST['age'] < 17) {
$reg_error[7] = "You need to be atleast 18 years or older to register!<br>";
}

// Recaptcha check 
if ($_GET['g-recaptcha']) {
		$reg_error[8] = "The captcha was not accepted!<br />";}
		

		
// Only numbers in this field
if (!ctype_digit($_POST['age'])) {
		$reg_error[9] = "You can only use numbers in the age field!";
}

//Check errors
if(!isset($reg_error) or empty($reg_error)) {
	$password = password_hash($password, PASSWORD_DEFAULT);
		
			$query2 = mysqli_query ($connect, "INSERT INTO `users` (`username`, `password`, `email`, `register_date`, `age`, `country`) 
				VALUES('$username', '$password', '$mail', '$regdate', '$age', '$country')");
					echo "Account registered!";
					echo $_POST['username'];}
						//If something wrong post reg_errors!
							elseif (isset($_POST['regbutton'])) {$i = 1;
								foreach ($reg_error as $values){echo $i++ . ". "; print_r($values);}
										} 





?>

<form id="registerform" action = "?page=register" method = "post">
		<table id="registertable">
				<tr><td>Username</td>  <td> <input id="input" type="text" name="username" maxlength="25" value="<?php if(isset($_POST['username'])) {echo strip_tags($_POST['username']);} ?>"></td></tr>
				<tr><td>Password</td>  <td> <input id="input" type="password" name = "password"></td></tr>
				<tr><td>Password Again</td>  <td> <input id="input" type="password" name = "password2"></td></tr>
				<tr><td>Age</td>  <td> <input id="input" type="text" name = "age" maxlength="3"></td></tr>
				<tr><td>E-Mail</td>  <td> <input id="input" type="text" name = "mail" value="<?php if(isset($_POST['mail'])) {echo strip_tags($_POST['mail']);} ?>"></td></tr>
				
				<tr><td>Country</td>  
				<td><select name="country">
					<option value="Afganistan">Afghanistan</option>
					<option value="Albania">Albania</option>
					<option value="Algeria">Algeria</option>
					<option value="American Samoa">American Samoa</option>
					<option value="Andorra">Andorra</option>
					<option value="Angola">Angola</option>
					<option value="Anguilla">Anguilla</option>
					<option value="Antigua & Barbuda">Antigua & Barbuda</option>
					<option value="Argentina">Argentina</option>
					<option value="Armenia">Armenia</option>
					<option value="Aruba">Aruba</option>
					<option value="Australia">Australia</option>
					<option value="Austria">Austria</option>
					<option value="Azerbaijan">Azerbaijan</option>
					<option value="Bahamas">Bahamas</option>
					<option value="Bahrain">Bahrain</option>
					<option value="Bangladesh">Bangladesh</option>
					<option value="Barbados">Barbados</option>
					<option value="Belarus">Belarus</option>
					<option value="Belgium">Belgium</option>
					<option value="Belize">Belize</option>
					<option value="Benin">Benin</option>
					<option value="Bermuda">Bermuda</option>
					<option value="Bhutan">Bhutan</option>
					<option value="Bolivia">Bolivia</option>
					<option value="Bonaire">Bonaire</option>
					<option value="Bosnia & Herzegovina">Bosnia & Herzegovina</option>
					<option value="Botswana">Botswana</option>
					<option value="Brazil">Brazil</option>
					<option value="British Indian Ocean Ter">British Indian Ocean Ter</option>
					<option value="Brunei">Brunei</option>
					<option value="Bulgaria">Bulgaria</option>
					<option value="Burkina Faso">Burkina Faso</option>
					<option value="Burundi">Burundi</option>
					<option value="Cambodia">Cambodia</option>
					<option value="Cameroon">Cameroon</option>
					<option value="Canada">Canada</option>
					<option value="Canary Islands">Canary Islands</option>
					<option value="Cape Verde">Cape Verde</option>
					<option value="Cayman Islands">Cayman Islands</option>
					<option value="Central African Republic">Central African Republic</option>
					<option value="Chad">Chad</option>
					<option value="Channel Islands">Channel Islands</option>
					<option value="Chile">Chile</option>
					<option value="China">China</option>
					<option value="Christmas Island">Christmas Island</option>
					<option value="Cocos Island">Cocos Island</option>
					<option value="Colombia">Colombia</option>
					<option value="Comoros">Comoros</option>
					<option value="Congo">Congo</option>
					<option value="Cook Islands">Cook Islands</option>
					<option value="Costa Rica">Costa Rica</option>
					<option value="Cote DIvoire">Cote D'Ivoire</option>
					<option value="Croatia">Croatia</option>
					<option value="Cuba">Cuba</option>
					<option value="Curaco">Curacao</option>
					<option value="Cyprus">Cyprus</option>
					<option value="Czech Republic">Czech Republic</option>
					<option value="Denmark">Denmark</option>
					<option value="Djibouti">Djibouti</option>
					<option value="Dominica">Dominica</option>
					<option value="Dominican Republic">Dominican Republic</option>
					<option value="East Timor">East Timor</option>
					<option value="Ecuador">Ecuador</option>
					<option value="Egypt">Egypt</option>
					<option value="El Salvador">El Salvador</option>
					<option value="Equatorial Guinea">Equatorial Guinea</option>
					<option value="Eritrea">Eritrea</option>
					<option value="Estonia">Estonia</option>
					<option value="Ethiopia">Ethiopia</option>
					<option value="Falkland Islands">Falkland Islands</option>
					<option value="Faroe Islands">Faroe Islands</option>
					<option value="Fiji">Fiji</option>
					<option value="Finland">Finland</option>
					<option value="France">France</option>
					<option value="French Guiana">French Guiana</option>
					<option value="French Polynesia">French Polynesia</option>
					<option value="French Southern Ter">French Southern Ter</option>
					<option value="Gabon">Gabon</option>
					<option value="Gambia">Gambia</option>
					<option value="Georgia">Georgia</option>
					<option value="Germany">Germany</option>
					<option value="Ghana">Ghana</option>
					<option value="Gibraltar">Gibraltar</option>
					<option value="Great Britain">Great Britain</option>
					<option value="Greece">Greece</option>
					<option value="Greenland">Greenland</option>
					<option value="Grenada">Grenada</option>
					<option value="Guadeloupe">Guadeloupe</option>
					<option value="Guam">Guam</option>
					<option value="Guatemala">Guatemala</option>
					<option value="Guinea">Guinea</option>
					<option value="Guyana">Guyana</option>
					<option value="Haiti">Haiti</option>
					<option value="Hawaii">Hawaii</option>
					<option value="Honduras">Honduras</option>
					<option value="Hong Kong">Hong Kong</option>
					<option value="Hungary">Hungary</option>
					<option value="Iceland">Iceland</option>
					<option value="India">India</option>
					<option value="Indonesia">Indonesia</option>
					<option value="Iran">Iran</option>
					<option value="Iraq">Iraq</option>
					<option value="Ireland">Ireland</option>
					<option value="Isle of Man">Isle of Man</option>
					<option value="Israel">Israel</option>
					<option value="Italy">Italy</option>
					<option value="Jamaica">Jamaica</option>
					<option value="Japan">Japan</option>
					<option value="Jordan">Jordan</option>
					<option value="Kazakhstan">Kazakhstan</option>
					<option value="Kenya">Kenya</option>
					<option value="Kiribati">Kiribati</option>
					<option value="Korea North">Korea North</option>
					<option value="Korea Sout">Korea South</option>
					<option value="Kuwait">Kuwait</option>
					<option value="Kyrgyzstan">Kyrgyzstan</option>
					<option value="Laos">Laos</option>
					<option value="Latvia">Latvia</option>
					<option value="Lebanon">Lebanon</option>
					<option value="Lesotho">Lesotho</option>
					<option value="Liberia">Liberia</option>
					<option value="Libya">Libya</option>
					<option value="Liechtenstein">Liechtenstein</option>
					<option value="Lithuania">Lithuania</option>
					<option value="Luxembourg">Luxembourg</option>
					<option value="Macau">Macau</option>
					<option value="Macedonia">Macedonia</option>
					<option value="Madagascar">Madagascar</option>
					<option value="Malaysia">Malaysia</option>
					<option value="Malawi">Malawi</option>
					<option value="Maldives">Maldives</option>
					<option value="Mali">Mali</option>
					<option value="Malta">Malta</option>
					<option value="Marshall Islands">Marshall Islands</option>
					<option value="Martinique">Martinique</option>
					<option value="Mauritania">Mauritania</option>
					<option value="Mauritius">Mauritius</option>
					<option value="Mayotte">Mayotte</option>
					<option value="Mexico">Mexico</option>
					<option value="Midway Islands">Midway Islands</option>
					<option value="Moldova">Moldova</option>
					<option value="Monaco">Monaco</option>
					<option value="Mongolia">Mongolia</option>
					<option value="Montserrat">Montserrat</option>
					<option value="Morocco">Morocco</option>
					<option value="Mozambique">Mozambique</option>
					<option value="Myanmar">Myanmar</option>
					<option value="Nambia">Nambia</option>
					<option value="Nauru">Nauru</option>
					<option value="Nepal">Nepal</option>
					<option value="Netherland Antilles">Netherland Antilles</option>
					<option value="Netherlands">Netherlands (Holland, Europe)</option>
					<option value="Nevis">Nevis</option>
					<option value="New Caledonia">New Caledonia</option>
					<option value="New Zealand">New Zealand</option>
					<option value="Nicaragua">Nicaragua</option>
					<option value="Niger">Niger</option>
					<option value="Nigeria">Nigeria</option>
					<option value="Niue">Niue</option>
					<option value="Norfolk Island">Norfolk Island</option>
					<option value="Norway">Norway</option>
					<option value="Oman">Oman</option>
					<option value="Pakistan">Pakistan</option>
					<option value="Palau Island">Palau Island</option>
					<option value="Palestine">Palestine</option>
					<option value="Panama">Panama</option>
					<option value="Papua New Guinea">Papua New Guinea</option>
					<option value="Paraguay">Paraguay</option>
					<option value="Peru">Peru</option>
					<option value="Phillipines">Philippines</option>
					<option value="Pitcairn Island">Pitcairn Island</option>
					<option value="Poland">Poland</option>
					<option value="Portugal">Portugal</option>
					<option value="Puerto Rico">Puerto Rico</option>
					<option value="Qatar">Qatar</option>
					<option value="Republic of Montenegro">Republic of Montenegro</option>
					<option value="Republic of Serbia">Republic of Serbia</option>
					<option value="Reunion">Reunion</option>
					<option value="Romania">Romania</option>
					<option value="Russia">Russia</option>
					<option value="Rwanda">Rwanda</option>
					<option value="St Barthelemy">St Barthelemy</option>
					<option value="St Eustatius">St Eustatius</option>
					<option value="St Helena">St Helena</option>
					<option value="St Kitts-Nevis">St Kitts-Nevis</option>
					<option value="St Lucia">St Lucia</option>
					<option value="St Maarten">St Maarten</option>
					<option value="St Pierre & Miquelon">St Pierre & Miquelon</option>
					<option value="St Vincent & Grenadines">St Vincent & Grenadines</option>
					<option value="Saipan">Saipan</option>
					<option value="Samoa">Samoa</option>
					<option value="Samoa American">Samoa American</option>
					<option value="San Marino">San Marino</option>
					<option value="Sao Tome & Principe">Sao Tome & Principe</option>
					<option value="Saudi Arabia">Saudi Arabia</option>
					<option value="Senegal">Senegal</option>
					<option value="Serbia">Serbia</option>
					<option value="Seychelles">Seychelles</option>
					<option value="Sierra Leone">Sierra Leone</option>
					<option value="Singapore">Singapore</option>
					<option value="Slovakia">Slovakia</option>
					<option value="Slovenia">Slovenia</option>
					<option value="Solomon Islands">Solomon Islands</option>
					<option value="Somalia">Somalia</option>
					<option value="South Africa">South Africa</option>
					<option value="Spain">Spain</option>
					<option value="Sri Lanka">Sri Lanka</option>
					<option value="Sudan">Sudan</option>
					<option value="Suriname">Suriname</option>
					<option value="Swaziland">Swaziland</option>
					<option value="Sweden">Sweden</option>
					<option value="Switzerland">Switzerland</option>
					<option value="Syria">Syria</option>
					<option value="Tahiti">Tahiti</option>
					<option value="Taiwan">Taiwan</option>
					<option value="Tajikistan">Tajikistan</option>
					<option value="Tanzania">Tanzania</option>
					<option value="Thailand">Thailand</option>
					<option value="Togo">Togo</option>
					<option value="Tokelau">Tokelau</option>
					<option value="Tonga">Tonga</option>
					<option value="Trinidad & Tobago">Trinidad & Tobago</option>
					<option value="Tunisia">Tunisia</option>
					<option value="Turkey">Turkey</option>
					<option value="Turkmenistan">Turkmenistan</option>
					<option value="Turks & Caicos Is">Turks & Caicos Is</option>
					<option value="Tuvalu">Tuvalu</option>
					<option value="Uganda">Uganda</option>
					<option value="Ukraine">Ukraine</option>
					<option value="United Arab Erimates">United Arab Emirates</option>
					<option value="United Kingdom">United Kingdom</option>
					<option value="United States of America">United States of America</option>
					<option value="Uraguay">Uruguay</option>
					<option value="Uzbekistan">Uzbekistan</option>
					<option value="Vanuatu">Vanuatu</option>
					<option value="Vatican City State">Vatican City State</option>
					<option value="Venezuela">Venezuela</option>
					<option value="Vietnam">Vietnam</option>
					<option value="Virgin Islands (Brit)">Virgin Islands (Brit)</option>
					<option value="Virgin Islands (USA)">Virgin Islands (USA)</option>
					<option value="Wake Island">Wake Island</option>
					<option value="Wallis & Futana Is">Wallis & Futana Is</option>
					<option value="Yemen">Yemen</option>
					<option value="Zaire">Zaire</option>
					<option value="Zambia">Zambia</option>
					<option value="Zimbabwe">Zimbabwe</option>
				</select></td></tr>
				<tr><td></td>  <td> <div class="g-recaptcha" data-sitekey="changedbyme"></div></td></tr>
				<tr> <td></td> <td><input type="checkbox" name="rules" <?php if(isset($_POST['rules'])){echo 'checked="checked"';} ?>>Do you accept our <a href="#" style="color: black;">rules?</a></td></tr>
				<tr> <td></td>  <td><input type="submit" name = "regbutton" value="Register"></td></tr>
		</table>

</form>

Klistrat in detta i index som tutorial säger!

 

<head>
<script src='https://www.google.com/recaptcha/api.js'></script>
</head>
Länk till kommentar
Dela på andra webbplatser

Beklagar, men det verkar som att just ingen i Eforum har erfarenhet av det du frågar om utan att du behöver leta upp ett forum för utvecklare i stället. Vänligen låt bli att bumpa tråden och tänk i stället på att obesvarade trådar syns bättre än besvarade trådar.

 

Cecilia

Moderator

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...