Ir para conteúdo
Fórum Script Brasil
  • 0

Ataques Diários De Spambot No Meu Guestbook


sbarros

Pergunta

Sofro diariamente deletando spam no meu guestbook. Encontrei um script muito parecido com captcha.

Inclui no guestbook, mas não esta funcionando. O que acresentei esta em negrito.

<?php
require_once(dirname(__FILE__) . '/config.php');
$bd = mysql_connect($mysql['server'], $mysql['name'], $mysql['pass']);
mysql_select_db($mysql['db'],$bd);
$kvgbcookie = $HTTP_COOKIE_VARS['kvgbcookie'];
if($a == "add") {
    add();
    kvgbcopyright();
}
elseif($a == "addsave") {
    addsave();
    kvgbcopyright();
}
elseif($a == "login") {
    login();
    kvgbcopyright();
}
elseif($a == "dologin") {
    dologin();
}
elseif($a == "delete") {
    delete();
    kvgbcopyright();
}
else {
    gbindex();
    kvgbcopyright();
}

function gbindex() {
    global $offset, $kvgbcookie, $PHP_SELF, $scripturl, $gburl, $HTTP_GET_VARS;
    $offset = $HTTP_GET_VARS['offset'];
    $resultado=mysql_query("SELECT count(*) FROM kv_guestbook");
    $linha=mysql_fetch_row($resultado);
    $gbtotal=$linha[0];

    if($offset == "") {
        $offset = 0;
    }
    $stop = $offset + 10;
    $query = "SELECT * FROM kv_guestbook ORDER BY id DESC LIMIT $offset,$stop";
    $result = mysql_query($query) or DIE(mysql_error());

    print("
    <link rel=\"stylesheet\" href=\"$scripturl/style.css\" type=\"text/css\">
    <table cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" border=\"0\">
    <tr>
    <td class=\"otherpages\" width=\"25%\">Páginas:
    <a href=\"$PHP_SELF?offset=0\">1</a>
    ");

    if($gbtotal >= "10") {
        print(" | <a href=\"$PHP_SELF?offset=10\">2</a>");
        if($gbtotal >= "20") {
            print(" | <a href=\"$PHP_SELF?offset=20\">3</a>");
            if($gbtotal >= "30") {
                print(" | <a href=\"$PHP_SELF?offset=30\">4</a>");
                if($gbtotal >= "40") {
                    print(" | <a href=\"$PHP_SELF?offset=40\">5</a>");
                }
            }
        }
    }

    print("
    </td>
    <td align=\"left\" class=\"addentry\"><a href=\"$PHP_SELF?a=add\">Registrar Visita</td>
    </tr>
    <tr>
    <td align=\"center\" class=\"gbheader\"><b>Visitantes</b></td><td align=\"center\" class=\"gbheader\"><b>Comentários</b></td>
    </tr>
    ");

    while($entry = mysql_fetch_object($result)) {
        print("
          <tr>
             <td class=\"gbt1\" valign=\"top\">
                <div class=\"mainname\">Nome: $entry->name</div>
                <div class=\"smallleft\">
                Localidade: $entry->location <br>
                ");
                if($entry->email != "") {
                    print("Email: <a href=\"mailto:$entry->email\">$entry->email</a> <br> \n");
                }
                if($entry->url != "") {
                    print("Homepage: <a href=\"$entry->url\">$entry->url</a> <br> \n");
                }

                /*
                if($kvgbcookie) {
                    print("
                    IP: $entry->ip<br>
                    <a href=\"$gburl?a=delete&id=$entry->id\">Deletar</a>
                    ");
                }
                */
                print("
                </div>
             </td>
                <td class=\"gbt2\" valign=\"top\">
                <div class=\"smallleft\">
                data: $entry->date </div><hr size=2 width=60% align=center><div class=\"post\">$entry->post</div>
              </td>
          </tr>
        ");
    }

    print("
    </table>
    ");
}

function add() {
    global $PHP_SELF;
    print("
    <center>
    <form action=\"$PHP_SELF\" method=\"post\">
    <input type=\"hidden\" name=\"a\" value=\"addsave\">
    <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">
    <tr>
    <td align=\"right\">Nome:</td><td><input type=\"text\" name=\"name\" size=\"25\"></td>
    </tr>
    <tr>
    <td align=\"right\">Email:</td><td><input type=\"text\" name=\"email\" size=\"25\"></td>
    </tr>
    <tr>
    <td align=\"right\">URL:</td><td><input type=\"text\" name=\"url\" value=\"http://\" size=\"25\"></td>
    </tr>
    <tr>
    <td align=\"right\">Localidade:</td>
    <td>
    <select name=\"location\">
    <option value=\"0\" SELECTED>-------- selecione --------</option>
    <OPTION VALUE=\"United States\">United States</OPTION>
    <OPTION VALUE=\"Afghanistan\">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=\"Antarctica\">Antarctica</OPTION>
    <OPTION VALUE=\"Antigua And Barbuda\">Antigua And 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=\"Bosnia And Herzegowina\">Bosnia And Herzegowina</OPTION>
    <OPTION VALUE=\"Botswana\">Botswana</OPTION>
    <OPTION VALUE=\"Bouvet Island\">Bouvet Island</OPTION>
    <OPTION VALUE=\"Brazil\">Brazil</OPTION>
    <OPTION VALUE=\"British Indian Ocean Territory\">British Indian Ocean Territory</OPTION>
    <OPTION VALUE=\"Brunei Darussalam\">Brunei Darussalam</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=\"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=\"Chile\">Chile</OPTION>
    <OPTION VALUE=\"China\">China</OPTION>
    <OPTION VALUE=\"Christmas Island\">Christmas Island</OPTION>
    <OPTION VALUE=\"Cocos (Keeling) Islands\">Cocos (Keeling) Islands</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 D Ivoire\">Cote D Ivoire</OPTION>
    <OPTION VALUE=\"Croatia\">Croatia</OPTION>
    <OPTION VALUE=\"Cuba\">Cuba</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=\"France, Metropolitan \">France, Metropolitan </OPTION>
    <OPTION VALUE=\"French Guiana\">French Guiana</OPTION>
    <OPTION VALUE=\"French Polynesia\">French Polynesia</OPTION>
    <OPTION VALUE=\"French Southern Territories\">French Southern Territories</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=\"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=\"Guinea-Bissau\">Guinea-Bissau</OPTION>
    <OPTION VALUE=\"Guyana\">Guyana</OPTION>
    <OPTION VALUE=\"Haiti\">Haiti</OPTION>
    <OPTION VALUE=\"Heard And Mc Donald Islands\">Heard And Mc Donald Islands</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=\"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=\"North Korea\">North Korea</OPTION>
    <OPTION VALUE=\"South Korea\">South Korea</OPTION>
    <OPTION VALUE=\"Kuwait\">Kuwait</OPTION>
    <OPTION VALUE=\"Kyrgyzstan\">Kyrgyzstan</OPTION>
    <OPTION VALUE=\"Lao Peoples Republic\">Lao Peoples Republic</OPTION>
    <OPTION VALUE=\"Latvia\">Latvia</OPTION>
    <OPTION VALUE=\"Lebanon\">Lebanon</OPTION>
    <OPTION VALUE=\"Lesotho\">Lesotho</OPTION>
    <OPTION VALUE=\"Liberia\">Liberia</OPTION>
    <OPTION VALUE=\"Libyan Arab Jamahiriya\">Libyan Arab Jamahiriya</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=\"Malawi\">Malawi</OPTION>
    <OPTION VALUE=\"Malaysia\">Malaysia</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=\"Micronesia\">Micronesia</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=\"Namibia\">Namibia</OPTION>
    <OPTION VALUE=\"Nauru\">Nauru</OPTION>
    <OPTION VALUE=\"Nepal\">Nepal</OPTION>
    <OPTION VALUE=\"Netherlands\">Netherlands</OPTION>
    <OPTION VALUE=\"Netherlands Antilles\">Netherlands Antilles</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=\"Northern Mariana Islands\">Northern Mariana Islands</OPTION>
    <OPTION VALUE=\"Norway\">Norway</OPTION>
    <OPTION VALUE=\"Oman\">Oman</OPTION>
    <OPTION VALUE=\"Pakistan\">Pakistan</OPTION>
    <OPTION VALUE=\"Palau\">Palau</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=\"Philippines\">Philippines</OPTION>
    <OPTION VALUE=\"Pitcairn\">Pitcairn</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=\"Reunion\">Reunion</OPTION>
    <OPTION VALUE=\"Romania\">Romania</OPTION>
    <OPTION VALUE=\"Russian Federation\">Russian Federation</OPTION>
    <OPTION VALUE=\"Rwanda\">Rwanda</OPTION>
    <OPTION VALUE=\"Saint Kitts And Nevis\">Saint Kitts And Nevis</OPTION>
    <OPTION VALUE=\"Saint Lucia\">Saint Lucia</OPTION>
    <OPTION VALUE=\"Saint Vincent And The Grenadines\">Saint Vincent And The Grenadines</OPTION>
    <OPTION VALUE=\"Samoa\">Samoa</OPTION>
    <OPTION VALUE=\"San Marino\">San Marino</OPTION>
    <OPTION VALUE=\"são Tome And Principe\">são Tome And Principe</OPTION>
    <OPTION VALUE=\"Saudi Arabia\">Saudi Arabia</OPTION>
    <OPTION VALUE=\"Senegal\">Senegal</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=\"South Georgia\">South Georgia</OPTION>
    <OPTION VALUE=\"The South Sandwich Islands\">The South Sandwich Islands</OPTION>
    <OPTION VALUE=\"Spain\">Spain</OPTION>
    <OPTION VALUE=\"Sri Lanka\">Sri Lanka</OPTION>
    <OPTION VALUE=\"St Helena\">St Helena</OPTION>
    <OPTION VALUE=\"St Pierre and Miquelon\">St Pierre and Miquelon</OPTION>
    <OPTION VALUE=\"Sudan\">Sudan</OPTION>
    <OPTION VALUE=\"Suriname\">Suriname</OPTION>
    <OPTION VALUE=\"Svalbard And Jan Mayen Islands\">Svalbard And Jan Mayen Islands</OPTION>
    <OPTION VALUE=\"Swaziland\">Swaziland</OPTION>
    <OPTION VALUE=\"Sweden\">Sweden</OPTION>
    <OPTION VALUE=\"Switzerland\">Switzerland</OPTION>
    <OPTION VALUE=\"Syrian Arab Republic\">Syrian Arab Republic</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 And Tobago\">Trinidad And Tobago</OPTION>
    <OPTION VALUE=\"Tunisia\">Tunisia</OPTION>
    <OPTION VALUE=\"Turkey\">Turkey</OPTION>
    <OPTION VALUE=\"Turkmenistan\">Turkmenistan</OPTION>
    <OPTION VALUE=\"Turks And Caicos Islands\">Turks And Caicos Islands</OPTION>
    <OPTION VALUE=\"Tuvalu\">Tuvalu</OPTION>
    <OPTION VALUE=\"Uganda\">Uganda</OPTION>
    <OPTION VALUE=\"Ukraine\">Ukraine</OPTION>
    <OPTION VALUE=\"United Arab Emirates\">United Arab Emirates</OPTION>
    <OPTION VALUE=\"United Kingdom\">United Kingdom</OPTION>
    <OPTION VALUE=\"US Minor Outlying Islands\">US Minor Outlying Islands</OPTION>
    <OPTION VALUE=\"Uruguay\">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=\"Viet Nam\">Viet Nam</OPTION>
    <OPTION VALUE=\"Virgin Islands    (British)\">Virgin Islands (British)</OPTION>
    <OPTION VALUE=\"Virgin Islands (U.S.)\">Virgin Islands (U.S.)</OPTION>
    <OPTION VALUE=\"Wallis And Futuna Islands\">Wallis And Futuna Islands</OPTION>
    <OPTION VALUE=\"Western Sahara\">Western Sahara</OPTION>
    <OPTION VALUE=\"Yemen\">Yemen</OPTION>
    <OPTION VALUE=\"Zaire\">Zaire</OPTION>
    <OPTION VALUE=\"Zambia\">Zambia</OPTION>
    <OPTION VALUE=\"Zimbabwe\">Zimbabwe</OPTION>
    <OPTION VALUE=\"Other-Not Shown\">Outro-Não Mostrado</OPTION>
    </select>
    </td>
    </tr>






<tr>
<td align=\"right\">Comentário:</td><td><textarea  name=\"post\" rows=\"8\" cols=\"30\"></textarea></td>
    </tr><tr>


    [b]<tr><td align='right'><img src='freecap.php' id='freecap'></td></tr>
        <tr><td align='right'>Código acima:</td><td><input type='text' name='word'></td></tr>[/b]
    <td align=\"right\"><input type=\"submit\" value=\"Postar\"></td><td><input type=\"reset\" value=\"Limpar\"></td>
    </tr>
    </table>
    </form></center>
    ");
}

[b]if(!empty($_SESSION['freecap_word']) && !empty($_POST['word']))
{
    if($_POST['word']==$_SESSION['freecap_word'])
    {
        // process form and then:
         header("Location=someone_file.php");
        $word_ok = "yes";
    } else {
        $word_ok = "no";
    }
} else {
    $word_ok = false;
}

if($word_ok!==false)
{
    if($word_ok=="yes")
    {
        echo "you got the word correct, rock on.<br />";
    } else {
        echo "sorry, that's not the right word, try again.<br />";
    }
}[/b]



function addsave(){
              global $HTTP_POST_VARS, $REMOTE_ADDR;
              $gb = $HTTP_POST_VARS;
              if($gb['name'] == "") {
                  print("Error: Você deve entrar com seu nome");
                  exit;
}


          $date = date("m-d-y");
              $query = "INSERT INTO kv_guestbook (name, email, url, ip, location, post, date) VALUES
              ('{$gb['name']}', '{$gb['email']}', '{$gb['url']}', '{$REMOTE_ADDR}', '{$gb['location']}', '{$gb['post']}', '$date')";
              mysql_query($query) or DIE(mysql_error());
              print("<center><font size=\"4\"></font></center><br><br>");
              gbindex();
}


function login() {
    global $scripturl;
    $scripturl .= "/livro.php";
    print("
    <font size=\"4\">Login</font><br>
    <form action=\"$scripturl\" method=\"post\">
    <input type=\"hidden\" name=\"a\" value=\"dologin\">
    Senha: <input type=\"password\" name=\"gbpass\" size=\"15\"><br>
    <input type=\"submit\" value=\"Login\">
    </form>
    ");
}

function dologin() {
    global $mysql, $gbpass, $gburl;
    $time = time() + 86400*365;
    if($gbpass == $mysql['pass']) {
        setcookie('kvgbcookie', $mysql['pass'], $time, '/');
    }
    header("Location: $gburl");
}

function delete() {
    global $id, $kvgbcookie, $mysql, $HTTP_GET_VARS;
    $id = $HTTP_GET_VARS['id'];
    if($kvgbcookie != $mysql['pass']) {
        print("Você não esta logado!");
        exit;
    }

    $query = "DELETE FROM kv_guestbook WHERE id='$id'";
    mysql_query($query) or DIE(mysql_error());
    gbindex();
}

function kvgbcopyright() {
    print("");
}
?>
O arquivo word.txt contem cerca de 200 palavras. abaixo o arquivo freecap.php
<?
session_start();
header ("Content-type: image/png");

// if false, generates quasi-random string (harder for humans to read, though)
$use_dict = true;

// true=transparent background, false=white
$bg_trans = true;

// colour of word
$text_r = rand(50,150);
$text_g = rand(50,150);
$text_b = rand(50,150);

// get word
if($use_dict==true)
{
    // load dictionary and choose random word
    // keep dictionary in non-web accessible folder, or htaccess it
    // or modify so word comes from a database; SELECT word FROM words ORDER BY rand() LIMIT 1
    // took 0.11 seconds when 'words' had 10,000 records

    $words = file("words.txt");
    $word = strtolower($words[rand(0,sizeof($words)-1)]);
    // cut off line endings/other possible odd chars
    $word = ereg_replace("[^a-z]","",$word);
    // might be large file so forget it now
    unset($words);
} else {
// modified from code by breakzero at hotmail dot com
// (http://uk.php.net/manual/en/function.rand.php)
// doesn't use easily mistaken chars like ij1lo0
    $consonant = 'bcdfghkmnpqrstuvwx2345789';
    $vowel = 'aeyu';
    $word = "";

    $wordlen = rand(5,6);

    for($i=0; $i<$wordlen; $i++)
    {
        // don't allow to start with 'vowel'
        if(rand(0,2)==1 && $i!=0)
        {
            $word .= substr($vowel,rand(1,strlen($vowel))-1,1);
        } else {
            $word .= substr($consonant,rand(1,strlen($consonant))-1,1);
        }
    }
}

// save word for comparison
$_SESSION['freecap_word'] = $word;

// modify width depending on maximum possible length of word
// you shouldn't need to use words > 6 chars in length though.
$width = 250;
$height = 60;

$im = ImageCreate($width, $height);
if(!$bg_trans)
{
    // blends colours, but is a pain to get nice transparency if true colour
    $im2 = ImageCreateTrueColor($width, $height);
} else {
    $im2 = ImageCreate($width, $height);
}

// set background colour (can change to any colour not in 50-150 range)
$bg = ImageColorAllocate($im, 255, 255, 255);

// set text colour
$text_color = ImageColorAllocate($im, $text_r, $text_g, $text_b);

// write word in random position, in random font size
$word_start_x = rand(1,30);
$word_start_y = rand(1,3);
$font_size = rand(2,5);
ImageString($im, $font_size, $word_start_x, $word_start_y, $word, $text_color);

// enlarge itself
// (could be acheived by using larger font; for compatibility, leave as is for now)
// randomly scale between 2 and 3 times orig size
$scale = "2.".rand(1,9999);
$scale = floatval($scale);
$width_scaled = $width*$scale;
$height_scaled = $height*$scale;
ImageCopyResampled($im2, $im, 0, 0, 0, 0, $width_scaled, $height_scaled, $width, $height);

// blank original image out
ImageFilledRectangle($im,0,0,$width,$height,$bg);

// randomly morph each character on x-axis
// copies enlarged text back to original image
$morph_factor = 1;
$y_chunk = 1;
for($i=0; $i<=$height_scaled; $i+=$y_chunk)
{
    // change amount of y_chunk
    $y_chunk = rand(1,3);

    for($j=0; $j<=strlen($word); $j++)
    {
        $orig_x = ($word_start_x+$j*($font_size+4))*$scale;
        $morph_x = $orig_x + rand(-$morph_factor,$morph_factor);
        ImageCopy($im, $im2, $morph_x, $i, $orig_x, $i, 21, $y_chunk);
    }
}

// randomly morph word along y-axis
$word_start_x *= $scale;
$x_chunk = rand(5,10);
$word_pix_size = $word_start_x+(strlen($word)*($font_size+4)*$scale);

for($i=$word_start_x; $i<=$word_pix_size; $i+=$x_chunk)
{
    ImageCopy($im2, $im, $i, rand(-1,1), $i, 0, $x_chunk+1, $height);
}

if($bg_trans==true)
{
    // make background transparent
    ImageColorTransparent($im2,$bg);
}

// tag it (feel free to remove/change (but if it's not essential I'd appreciate you leaving it))
$lt_grey = ImageColorAllocate($im2,128,128,128);

// ensure tag is right-aligned
$tag_str = "";
$tag_width = strlen($tag_str)*6;

// write tag
ImageString($im2, 2, $width-$tag_width, 45, $tag_str, $lt_grey);

// output image
ImagePNG($im2);

// kill GD images (removes from memory)
ImageDestroy($im);
ImageDestroy($im2);
exit();
?>

Por favor, me ajudem

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Você poderia colocar um auto identificação quando postarem o recado, tipo quando você cria um email você tem que colocar as letras e numeros no campo pra você poder prosseguir no cadastro.

Link para o comentário
Compartilhar em outros sites

  • 0

Você poderia colocar um auto identificação quando postarem o recado, tipo quando você cria um email você tem que colocar as letras e numeros no campo pra você poder prosseguir no cadastro.

É exatamente isto que eu quero para proteger o Livro de Visitas

Link para o comentário
Compartilhar em outros sites

  • 0

Tente colokar assim... O seu site, pra entrar no livro de visitas, precisa ser por ele não é?? ninguém entra num site direto no livro de visitas, normalmente tem um link para acessar.

Os Spamsbot eles acessam diretamente o livro de visita postando o código.

Você deve colokar dessa forma

<?

if($_POST['campo_do_nome'] && strPos("http://seusite.com.br/", $_SERVER['HTTP_REFERER']))

{

// Código para cadastrar no Livro

}

?>

FLWS! Acho que tem uns erros, se tiver, me corrigam... FLWS! Epero ajudar XD

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...