v2.5.2
Giriş yap

PHP Post Sorunu

mami
1,145 defa görüntülendi ve 1 kişi tarafından değerlendirildi

Selam dostlar 👋
linktr.ee mantığında bir site yapıyorum. fakat bir sorunum var.
sayfamda link eklemek için post atınca, sayfayı yenilediğim zaman post işlemi tekrarlanıyor.
sayfayı her yenilediğimde, yeni bir link ekleniyor.
bu sorunu nasıl çözebilirim?

Resim: https://www.hizliresim.com/cwfwufd

kodlar:

if ($_POST) {
	if ($_POST['token'] == $_SESSION['_token']) {
		if ($_POST['islem'] == "ekle") {
			$insert = $db->prepare("INSERT INTO linkler SET link_name=?, link_address=?, link_owner=?");
			$control_insert = $insert->execute(array($_POST['link_name'], $_POST['link_address'], $_SESSION['username']));
		}else if($_POST['islem']=="sil"){
			$delete = $db->prepare("DELETE FROM linkler WHERE link_id=?");
			$control_delete = $delete->execute(array($_POST['deger_hidden']));
		}
	}
}
?>
<hr>
<h3>Link Ekle!</h3>
	<form method="post">
		<label for="link_name_id">Link İsmi: </label><input type="text" placeholder="youtube, facebook..." name="link_name" id="link_name_id"><br>
		<label for="link_id">Link: </label><input id="link_id" placeholder="http://" type="text" name="link_address">
		<input type="hidden" name="islem" value="ekle">
		<input type="hidden" name="token" value="<?=$_SESSION['_token']; ?>">
		<br>
		<br><button>Ekle</button>
	</form>
	<hr>
	<h3>Linklerin</h3>
	<ol>
		link ismi - link adresi
	</ol>
	<ol>
	<?php 
	$mgryrdwadwadwdaggjf = $db->prepare("SELECT * FROM linkler WHERE link_owner=?");
	$mgryrdwadwadwdaggjf->execute(array($_SESSION['username']));

	if (!empty($mgryrdwadwadwdaggjf->rowCount())) {
		while($fregyryrdy=$mgryrdwadwadwdaggjf->fetch()){
			?>
			<li>
				<?=$fregyryrdy['link_name']." - ".$fregyryrdy['link_address']; ?><form method="post"><input name="deger_hidden" type="hidden" value="<?=$fregyryrdy['link_id']; ?>"><input type="hidden" name="islem" value="sil"><input name="token" type="hidden" value="<?=$_SESSION['_token']; ?>"><button>SİL!</button></form>
			</li>
			<?php 
		}
	}else{
		echo "eklediğiniz link Bulunmuyor.";
	}

	 ?></ol><hr>


qplot
1051 gün önce

işlem bitince header ile yönlendıreceksın


if ($_POST) {
	if ($_POST['token'] == $_SESSION['_token']) {
		if ($_POST['islem'] == "ekle") {
			$insert = $db->prepare("INSERT INTO linkler SET link_name=?, link_address=?, link_owner=?");
			$control_insert = $insert->execute(array($_POST['link_name'], $_POST['link_address'], $_SESSION['username']));
			
			header('Location: xxx.php');
            exit;
			
		}else if($_POST['islem']=="sil"){
			$delete = $db->prepare("DELETE FROM linkler WHERE link_id=?");
			$control_delete = $delete->execute(array($_POST['deger_hidden']));
			
		    header('Location: xxx.php');
            exit;
            
		}
	}
}