| Autor | Zpráva | ||
|---|---|---|---|
| ja duck Profil |
#1 · Zasláno: 31. 10. 2015, 15:14:07
Ahoj,
jsem v PHP úplný začátečník. Mám php formulář s kontrolou proti spamu, který funguje, ale místo slova se mě zobrazí pouze "díra". Potřeboval bych pomoci jak to udělat. Posilám začátek scriptu na formulář a script php na Captcha. Dostal jsem k němu i dvě složky sample-words-en a sample-words-es. Toto bylo napsáno v README : Tento skript čte standardní slova souboru (jedno slovo na řádek) a uloží nové slovo soubor s formátu potřebného na Cool-php-capcha skriptu. Pro zabránění vzdálený webový přístup, bude výstupní soubor bude PHP skript a musí mít příponu .php Použití: importwords.php <infile> <outfile> Příklad: importwords.php english.txt en.php <?php
session_start();
if (!empty($_REQUEST['captcha']))
{
if (empty($_SESSION['captcha']) || trim(strtolower($_REQUEST['captcha'])) != $_SESSION['captcha'])
{
$oznameni= 'Please enter the text correctly from the picture';
}
else
{
if($_SERVER["REQUEST_METHOD"] == "POST")
{
// promenne
$name = $_POST["name"];
$email = $_POST["email"];
$txt = $_POST["txt"];
$moje_adresa = "info@neco.com"; // zmente na svoji adresu
$predmet = "Info text"; // zde nastavite co bude uvedeno v predmetu
$zprava = ("Name: " . $name . "\n\n" . "Text: \n" . $txt . "\n\nSender: " . $email);
// odeslani emailu
mail($moje_adresa,$predmet,$zprava);
$oznameni= 'The message was sent !';
}
}
unset($_SESSION['captcha']);
}
?>
<!DOCTYPE HTML>
<html>
<head>
<title>Formulář</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div style="margin:20px ">
<form method="post">script Captcha: <?php
/** Word lengths */
$minLength = 5;
$maxLength = 8;
if ($argc < 3) {
die("Usage: $argv[0] infile outfile\n");
}
if (!file_exists($argv[1])) {
die("File '$argv[1]' doesn't exists\n");
}
$fp = fopen($argv[1], "r");
$fp2 = fopen($argv[2], "w");
fwrite($fp2, "<?php /*\n");
while ($lin = fgets($fp)) {
$lin = trim(strtolower($lin));
$strlen = strlen($lin);
if ($strlen>=$minLength && $strlen<=$maxLength && preg_match("/^[a-z]+$/", $lin)) {
$lin = str_pad($lin, $maxLength);
fwrite($fp2, "$lin\n");
}
}
fwrite($fp2, "*/ ?>\n");
fclose($fp);
fclose($fp2);
?> |
||
| Enko Profil |
#2 · Zasláno: 2. 11. 2015, 22:19:55
Co zkusit něco jednoduššího na implementaci? Třeba toto codeforgeek.com/2014/12/google-recaptcha-tutorial. Je tam odkaz i na oficiální dokumentaci.
|
||
|
Časová prodleva: 10 let
|
|||
0