- Gereksiz yere 4 kez kullanıcı bilgilerini çağırmışsınız. Bunu 1 kez çağırmanız yeterlidir.
- Else ve if komutlarında { ve } karakterlerini, altına tek satır kod girecekseniz kullanmanıza gerek yok.
- Kodlarınız çok karışık, boşu boşuna kendinizi yoruyorsunuz. Daha düzenli kod yazmayı denemelisiniz.
- Kullanıcı bilgilerini Session'da kullanıcı adına göre tutup, ona göre sorgulama yapmak performans kaybına yol açar. Her kullanıcı için bir auto_increment ile benzersiz bir ID belirleyip, Session'da bu ID'yi tutmak ve tüm SQL sorgularını bu ID üzerinden çalıştırmak performans açısından daha avantajlıdır.
<?php
// kullanıcı bilgilerini tek seferde almanız yeterlidir.
// tekrar tekrar sorgu çalıştırmanız performans kaybına yol açar.
if($calistir = mysqli_query($baglan, "SELECT * FROM uyeler WHERE kadi = '".$_SESSION['kadi']."'" ))
$oku = mysqli_fetch_assoc($calistir);
?>
<section id="content">
<h3>E-Mail Adresinizi Değiştirin</h3>
<form name="update1" action="" method="POST">
<?php
// update=eposta şeklinde bilgi gönderiyoruz
?>
<input type="hidden" name="update" value="eposta" />
<div class="6u 12u$(xsmall)">
<input type="text" name="degisik" value="" placeholder="<?php echo $oku['eposta']; ?>" />
</div>
<div class="12u$">
<ul class="actions">
<li><input type="submit" value="Güncelle" class="special" /></li>
</ul>
</div>
<?php
# güncelle
// update=eposta şeklinde gönderdiğimiz bilgiyi doğruluyoruz
if($_POST && $_POST['update'] == 'eposta') {
$degismail = trim($_POST["degisik"]);
if (!$degismail)
echo "<div class=\"fa login\"> Lütfen Eksik Alanları Tamamlayınız. </div>";
elseif (!filter_var( $degismail, FILTER_VALIDATE_EMAIL ))
echo "<div class=\"fa login\"> Lütfen Geçerli Bir E-Mail Adresi Giriniz. </div>";
else {
$varmiiki=mysqli_num_rows(mysqli_query ($baglan, "SELECT * FROM uyeler WHERE eposta = '$degismail'"));
if ($varmiiki!=0)
echo "<div class=\"fa login\"> Bu E-Mail Adresi Bulunuyor. </div>";
else {
$stmt = $baglan->stmt_init();
$stmt->prepare("UPDATE uyeler SET eposta=? WHERE eposta = '".$oku['eposta']."'");
$stmt->bind_param("s",$degismail);
if ($stmt->execute())
echo "<div class=\"fa login\"> Başarıyla Güncellendi! </div>";
else
echo "<div class=\"fa login\"> Bir Sorun Oluştu! </div>";
}
}
}
?>
</form>
</section>
<hr>
<section id="content">
<h3>İsminizi Değiştirin</h3>
<form name="update2" action="" method="POST">
<?php
// update=nick şeklinde bilgi gönderiyoruz
?>
<input type="hidden" name="update" value="nick" />
<div class="6u 12u$(xsmall)">
<input type="text" name="nick" value="" placeholder="<?php echo $oku['kadi']; ?>" />
</div>
<div class="12u$">
<ul class="actions">
<li class="actions"><input type="submit" value="Güncelle" class="special" /></li>
</ul>
</div>
</form>
<?php
// update=nick şeklinde gönderdiğimiz bilgiyi doğruluyoruz
if($_POST && $_POST['update'] == 'nick') {
$nick = trim($_POST["nick"]);
if (!$nick)
echo "<div class=\"fa login\"> Lütfen Eksik Alanları Tamamlayınız. </div>";
else {
$varmi=mysqli_num_rows(mysqli_query ($baglan, "SELECT * FROM uyeler WHERE adi = '$nick'"));
if ($varmi!=0)
echo "<div class=\"fa login\"> Bu Takma Ad Kullanılıyor. </div>";
else {
$stmt = $baglan->stmt_init();
$stmt->prepare("UPDATE uyeler SET adi = ? WHERE adi ='".$oku['adi']."'");
$stmt->bind_param("s",$nick);
if ($stmt->execute())
echo "<div class=\"fa login\"> Başarıyla Güncellendi! </div>";
else
echo "<div class=\"fa login\"> Bir Sorun Oluştu! </div>";
}
}
}
?>
</section>