Autor | Zpráva | ||
---|---|---|---|
luma64 Profil |
Pozdravujem ! Chcem vás poprosiť o radu. Našiel som na webe šikovnú aplikáciu na vytvorenie a validáciu captcha. Pozostáva z 2 php stránok. Jedna je index.php a v druhej (captcha.php) je funkcionalita na vytvorenie captcha a vrátenie náhodne vygenerovaného reťazca.
V svojej aplikácii mám jednu php stránku, ktorá v sebe obsahuje mnoho funkcií (externe.php), kde kontrolujem prístupy, formáty hodnôt atď. Chcel by som do nej pridať aj spomenutú stránku (captcha.php), ktorá by bola ako funkcia, ktorá je pri vytváraní a validácii volaná. Neviem ako ju z index.php zavolať aby sa mi obrázok vygeneroval. Keď ich mám ako dve samostatmé stránky: index.php a captcha.php vtedy funkcionalita aj s validáciou funguje korektne. Knihovňa GD je implementovaná. Stav, ktorý sa mi nespráva korektne je nasledovný. Index.php <?php .. session_start();// Must be there at top of the page where we want to use session variables. $image; --- $_SESSION['count'] = time(); ?> <html> <meta name="viewport" content="width=device-width, initial-scale=1"> <body> <h2>Captcha Image Verification</h2> <form name="stmt" method="post"> <table> <tr> <td>Verification code :</td> <td><input type="text" name="vercode" size="10" required="required" /> <img src="captcha()" style="margin-top: 1%"> </td> </tr> <tr> <td><input type="submit" name="submit" value="Submit" /></td> </tr> </table> </form> <?php if(isset($_POST['submit'])) { $vercode = $_POST["vercode"]; $sess_vercode = $_SESSION["vercode"]; if ($_POST["vercode"] != $_SESSION["vercode"] OR $_SESSION["vercode"]=='') { echo "<script>alert('Kontrolny údaj nie je správny');</script>" ; } else { echo "<script>alert('Kontrolny údaj je správny');</script>" ; } } ?> externe.php <?php function captcha() { session_start(); $text = rand(10000,99999); $_SESSION["vercode"] = $text; $height = 25; $width = 65; $image_p = imagecreate($width, $height); $black = imagecolorallocate($image_p, 0, 0, 0); $white = imagecolorallocate($image_p, 255, 255, 255); $font_size = 14; imagestring($image_p, $font_size, 5, 5, $text, $white); imagejpeg($image_p, null, 80); } ?> Moderátor Kajman: Mezi značky [>pre] a [>/pre] vkládejte jen kódy.
|
||
Keeehi Profil |
<img src="externe.php?captcha" style="margin-top: 1%"> No a za definici funkce přidat její volání v případě, že je potřeba. function captcha() { ... } if(isset($_GET['captcha'])) { captcha(); exit; } |
||
luma64 Profil |
#3 · Zasláno: 29. 4. 2021, 11:13:29
No, vyskúšal som som čo som mohol. ... nepodarilo sa mi. Este mi nie je ale jasne, kam vlozit kusok kodu
if(isset($_GET['captcha'])) { captcha(); exit; } |
||
Keeehi Profil |
luma64:
„Este mi nie je ale jasne, kam vlozit kusok kodu“ Tak se podívej, kam jsem ho dal já ;) |
||
luma64 Profil |
#5 · Zasláno: 29. 4. 2021, 14:30:04
Dakujem !
|
||
Časová prodleva: 3 roky
|
0