Tüm Aşağıdaki kod harika çalışıyor. Submit.php adlı bir dosyada, bir kullanıcı form üzerinden bir gönderme girebilirsiniz. Bazı kod MySQL veritabanı içine teslim ekler nerede formu, submit2.php gider. Şimdiye kadar iyi.
İşte sorun: kullanıcı submit2.php indi sonra, kullanıcı tarayıcıyı yeniler ise, bir "Onayla Formu Resubmission" pop-up kutusu görünür. Kullanıcı bu pop-up "Devam" vurursa Ardından, teslim MySQL veritabanı yeniden sunulacaktır.
Nasıl submit2.php aşağıdakileri yapın yapabilirsiniz:
Tarayıcı yenilenir ise pop-up görünmez.
Teslim veritabanına yeniden teslim olmayacaktır.
Teşekkür peşin,
John
Submit.php On:
echo '<form action="http://www.domain.com/sample/submit2.php" method="post">
<input type="hidden" value="'.$_SESSION['loginid'].'" name="uid">
<div class="submissiontitle"><label for="title">Story Title:</label></div>
<div class="submissionfield"><input name="title" type="title" id="title" maxlength="1000"></div>
<div class="urltitle"><label for="url">Link:</label></div>
<div class="urlfield"><input name="url" type="text" id="url" maxlength="500"></div>
<div class="submissionbutton"><input name="submit" type="submit" value="Submit"></div>
</form>
';
Submit2.php On:
if (isLoggedIn() == true)
{
$remove_array = array('http://www.', 'http://', 'https://', 'https://www.', 'www.');
$cleanurl = str_replace($remove_array, "", $_POST['url']);
$cleanurl = strtolower($cleanurl);
$cleanurl = preg_replace('/\/$/','',$cleanurl);
$cleanurl = stripslashes($cleanurl);
$title = $_POST['title'];
$uid = $_POST['uid'];
$title = mysql_real_escape_string($title);
$title = stripslashes($title);
$slug = str_replace(' ', '-', $title);
echo '-'.$site1.'-';
$cleanurl = mysql_real_escape_string(trim($cleanurl));
$site1 = 'http://' . $cleanurl;
$displayurl = parse_url($site1, PHP_URL_HOST);
function isURL($url1 = NULL) {
if($url1==NULL) return false;
$protocol = '(http://|https://)';
$allowed = '[-a-z0-9]{1,63}';
$regex = "^". $protocol . // must include the protocol
'(' . $allowed . '\.)'. // 1 or several sub domains with a max of 63 chars
'[a-z]' . '{2,6}'; // followed by a TLD
if(eregi($regex, $url1)==true) return true;
else return false;
}
if(isURL($site1)==true)
mysql_query("INSERT INTO submission VALUES (NULL, '$uid', '$title', '$slug', '$cleanurl', '$displayurl', NULL)");
else
echo "<p class=\"topicu\">Not a valid URL.</p>\n";
} else {
// user is not loggedin
show_loginform();
}