E aí pessoal, tudo certo?
Estou tendo um problema aqui com o PHP.
Eu estou desenvolvendo um sistema de encurtador de links, que até agora está na reta final.
Já está até no ar, caso queiram verificar: www.gfans.cc.
Porém, estou tendo um problema com reenvio de dados.
O problema é simples: se eu encurto um link e atualizo na hora de pegar o link, ele encurta o mesmo novamente.
Esse é um problema e tanto, pois podemos dizer que é meio que um spam, não?
Fiquem a vontade para acessar o site e testar esse problema.
Já procurei diversos tutoriais na internet, alguns falando de session_start(); com session_destroy(); ou alguns falando sobre unset($_POST); e outros exemplos. No entretanto, nenhum supriu minha necessidade, ou então eu não soube utilizar da maneira correta.
Alguém de vocês podem me ajudar a solucionar esse problema?
<?include("config.php");if (strstr($_SERVER['HTTP_REFERER'], $root));else { header ("Location: $rooturl"); }$ip = $_SERVER['REMOTE_ADDR'];$url = mysql_real_escape_string($_POST['url']);if(preg_match('|^http(s)?://[a-z0-9-]+(\.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $url)) { if (empty($_POST['tag'])) { $query = mysql_query("INSERT INTO $table (ip,url) VALUES ('$ip','$url')") or die('MySQL error: '.mysql_error()); $qs = mysql_insert_id(); } else { if (ereg('^[a-zA-Z0-9]+[a-zA-Z0-9]+$', $_POST['tag'])) { $tag = mysql_real_escape_string($_POST['tag']); $query = mysql_query("select * from $table where `tag` = '$tag';") or die('MySQL error: '.mysql_error()); if (mysql_num_rows($query) != 0) die("<script>alert('Seu valor pr\u00e9-definido j\u00e1 est\u00e1 em uso. Por favor, tente outro ou deixe em branco para que o sistema gere um automaticamente.');history.go(-1) </script>"); else { $query = mysql_query("insert $table (ip,url,tag) VALUES ('$ip','$url','$tag')") or die('MySQL error: '.mysql_error()); $qs = $tag; } } else die("<script>alert('Seu valor pr\u00e9-definido contem caracteres inv\u00e1lidos. Apenas n\u00fameros e letras do alfabeto s\u00e3o permitidos. Por favor, reveja os dados e tente novamente.');history.go(-1) </script>"); } $link = $destination . $qs; require 'create_template.php';} else { echo "<script>alert('Por favor, digite uma URL v\u00e1lida. Reveja os dados e tente novamente.');history.go(-1) </script>"; }mysql_close(); ?>
Fico tremendamente agradecido.
Forte abraço!