Új hozzászólás Aktív témák

  • Forza_JUVE

    aktív tag

    válasz Sk8erPeter #6801 üzenetére

    OK ... bár nem lesz rövid. :B
    Lehet h elég lett volna csak a <form> részt, de gondoltam, minthogy kimaradjon valami, inkább idemásolom az egész php-t:

    -------------------------------------------------------------------------------------
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="hu" lang="hu">

    <head>
    <title>******</title>
    <meta name="description" content="******"/>
    <meta name="robots" content="index, follow" />
    <meta name="keywords" content="******"/>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta http-equiv="Content-Language" Content="hu"/>
    </head>

    <body bgcolor="<?=$background?>" style="font-family:<?=$font_face?>">

    <font size="4" color="<?=$title_color?>"><b><?=$title?></b></font>
    <br><br>
    <form method="post" action="<?=$self?>">
    <input type="hidden" name="do" value="add">
    <table width="500" border="0" cellspacing="0" cellpadding="0" bgcolor="<?=$table_border?>">
    <tr>
    <td>
    <div align="center">
    <table width="100%" border="0" cellspacing="1" cellpadding="5">
    <tr bgcolor="<?=$table_content_1a?>">
    <td width="28%">
    <div align="right"><font size="2">*Név: </font></div>
    </td>
    <td width="72%">
    <input type="text" name="vname" size="30" maxlength="70" value="<?=$_SESSION['name']?>">
    </td>
    </tr>
    <tr bgcolor="<?=$table_content_1a?>">
    <td width="28%">
    <div align="right"><font size="2">*E-mail cím: </font></div>
    </td>
    <td width="72%">
    <input type="text" name="vemail" size="30" maxlength="100" value="<?=$_SESSION['email']?>">
    </td>
    </tr>
    <tr bgcolor="<?=$table_content_1a?>">
    <td width="28%">
    <div align="right"><font size="2">Weboldal: </font></div>
    </td>
    <td width="72%">
    <input type="text" name="vurl" size="30" maxlength="150" value="<?=$_SESSION['url']?>">
    </td>
    </tr>
    <tr bgcolor="<?=$table_content_1a?>">
    <td valign="top" width="28%">
    <div align="right"><font size="2">*Hozzászólás: </font></div>
    </td>
    <td width="72%">
    <textarea name="vcomment" cols="40" rows="7" wrap="virtual"><?=$_SESSION['comment']?></textarea>
    <br><font size="1">* kötelező kitölteni!</font>
    </td>
    </tr>
    <?if (strtoupper($imgcode) == "YES") {?>

    <tr bgcolor="<?=$table_content_1a?>">
    <td width="28%">
    <div align="right"><font size="2">Verification Code :</font></div>
    </td>
    <td width="72%">
    <font size="1">Please retype this code below :</font>
    <img src="image.php?<?=time()?>" border="1"><br>
    <input type="text" name="vsecc" size="4" maxlength="4">
    </td>
    </tr>

    <?}?>

    <script type="text/javascript"
    src="http://www.google.com/recaptcha/api/challenge?k=******">
    </script>
    <noscript>
    <iframe src="http://www.google.com/recaptcha/api/noscript?k=******"
    height="300" width="500" frameborder="0"></iframe><br>
    <textarea name="recaptcha_challenge_field" rows="3" cols="40">
    </textarea>
    <input type="hidden" name="recaptcha_response_field"
    value="manual_challenge">
    </noscript>

    <tr bgcolor="<?=$table_content_1b?>">
    <td colspan="2">
    <div align="center">
    <font size="2">
    <input type="submit" value="Mehet">
    <input type="reset" value="Törlés">
    <input type="button" value="Vissza" onclick="window.location='<?="$self?page=$page"?>'">
    </font>
    </div>
    </td>
    </tr>
    </table>
    </div>
    </td>
    </tr>
    </table>
    </form>

    </body>
    </html>

    <!-- End of entry form -->

    <?
    break;
    case "add":
    $vname = isset($_POST['vname']) ? trim($_POST['vname']) : "";
    $vemail = isset($_POST['vemail']) ? trim($_POST['vemail']) : "";
    $vurl = isset($_POST['vurl']) ? trim($_POST['vurl']) : "";
    $vcomment = isset($_POST['vcomment']) ? trim($_POST['vcomment']) : "";
    $vsecc = isset($_POST['vsecc']) ? strtoupper($_POST['vsecc']) : "";

    if (strlen($vname) > 70) $vname = substr($vname,0,70);
    if (strlen($vemail) > 100) $vemail = substr($vemail,0,100);
    if (strlen($vurl) > 150) $vurl = substr($vurl,0,150);

    $_SESSION['name'] = $vname;
    $_SESSION['email'] = $vemail;
    $_SESSION['url'] = $vurl;
    $_SESSION['comment'] = stripslashes($vcomment);

    if ($vname == "" || $vcomment == "") {
    input_err("Nem töltöttél ki egy mezőt!");
    }

    if ($vemail != "" && !preg_match("/([\w\.\-]+)(\@[\w\.\-]+)(\.[a-z]{2,4})+/i", $vemail)) {
    input_err("Érvénytelen e-mail cím!");
    }

    if ($vurl != "" && strtolower($vurl) != "http://") {
    if (!preg_match ("#^http://[_a-z0-9-]+\\.[_a-z0-9-]+#i", $vurl)) {
    input_err("Érvénytelen webcím!");
    }
    }

    $test_comment = preg_split("/[\s]+/",$vcomment);
    $jmltest = count($test_comment);
    for ($t=0; $t<$jmltest; $t++) {
    if (strlen(trim($test_comment[$t])) > 70) {
    input_err("Érvénytelen szóhasználat: ".stripslashes($test_comment[$t]));
    }
    }

    if (isset($_SESSION['add']) && $_SESSION['add'] >= $max_entry_per_session) {
    input_err("Egy munkamenetben csak $max_entry_per_session hozzászólás engedélyezett!",false);
    } elseif (!isset($_SESSION['add'])) {
    exit;
    }

    if ($vsecc != $_SESSION['secc'] && strtoupper($imgcode) == "YES") {
    input_err("Invalid verification code");
    }
    //--only 2000 characters allowed for comment, change this value if necessary
    $maxchar = 2000;
    if (strlen($vcomment) > $maxchar) $vcomment = substr($vcomment,0,$maxchar)."...";

    $idx = date("YmdHis");
    $tgl = date("F d, Y - h:i A");

    $vname = str_replace("<","&lt;",$vname);
    $vname = str_replace(">","&gt;",$vname);
    $vname = str_replace("~","-",$vname);
    $vname = str_replace("\"","&quot;",$vname);
    $vcomment = str_replace("<","&lt;",$vcomment);
    $vcomment = str_replace(">","&gt;",$vcomment);
    $vcomment = str_replace("|","",$vcomment);
    $vcomment = str_replace("\"","&quot;",$vcomment);
    $vurl = str_replace("<","",$vurl);
    $vurl = str_replace(">","",$vurl);
    $vurl = str_replace("|","",$vurl);
    $vemail = str_replace("<","",$vemail);
    $vemail = str_replace(">","",$vemail);
    $vemail = str_replace("|","",$vemail);

    if (strtoupper($os) == "WIN") {
    $vcomment = str_replace($newline,"<br>",$vcomment);
    $vcomment = str_replace("\r","",$vcomment);
    $vcomment = str_replace("\n","",$vcomment);
    } else {
    $vcomment = str_replace($newline,"<br>",$vcomment);
    $vcomment = str_replace("\r","",$vcomment);
    }

    if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && eregi("^[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}$",$_SERVER['HTTP_X_FORWARDED_FOR'])) {
    $ipnum = $_SERVER['HTTP_X_FORWARDED_FOR'];
    } else {
    $ipnum = getenv("REMOTE_ADDR");
    }

    $newdata = "|~|$idx|~|$tgl|~|$vname|~|$vemail|~|$vcomment|~|$vurl|~|$ipnum|~|";
    $newdata = stripslashes($newdata);
    $newdata .= $newline;

    if (!is_spam($newdata)) {
    $tambah = fopen($data_file,"a");
    if (strtoupper($os)=="UNIX") {
    if (flock($tambah,LOCK_EX)) {
    fwrite($tambah,$newdata);
    flock($tambah,LOCK_UN);
    }
    } else {
    fwrite($tambah,$newdata);
    }
    fclose($tambah);

    //--send mail
    if (strtoupper($notify) == "YES") {
    $msgtitle = "******";
    $vcomment = str_replace("&quot;","\"",$vcomment);
    $vcomment = stripslashes($vcomment);
    $vcomment = str_replace("<br>","\n",$vcomment);
    $msgcontent = "Local time : $tgl\n\nThe addition from $vname :\n----------------------------\n\n$vcomment\n\n-----End Message-----";
    @mail($admin_email,$msgtitle,$msgcontent,"From: $vemail\n");
    }
    //--clear session
    $_SESSION['name'] = "";
    $_SESSION['email'] = "";
    $_SESSION['url'] = "http://";
    $_SESSION['comment'] = "";
    $_SESSION['add']++;
    $_SESSION['secc'] = "";
    redir($self,"Hozzászólás rögzítve ... köszönöm!");
    } else {
    redir($self,"Sajnos a hozzászólást nem tudom rögzíteni!");
    }
    break;

    case "del":
    $record = file($data_file);
    $jmlrec = count($record);
    for ($i=0; $i<$jmlrec; $i++) {
    $row = explode("|~|",$record[$i]);
    if ($id == $row[1]) {
    ?>

    -------------------------------------------------------------------------------------

    nos, ez lenne ... a Captcha-s részt kiemeltem félkövérre.
    Amúgy közvetlenül felette van az a "Verification Code" rész (dőlten) ami hasonló célt szolgálna ugyebár.
    Ez eredetileg is benne volt a php-ban, de vmi oknál fogva nem jelenik meg a kép a beírandó karakterekkel.
    Így fest: kép Nem tudom mi baja van ?! :F
    Éppen ezért is kezdtem el ezt a Guglis reCAPTCHA dolgot.

    Köszi szépen előre is a segítséget! :R

Új hozzászólás Aktív témák