v2.5.2
Giriş yap

Php yönlendirme sorunu.

emirhankayabas
925 defa görüntülendi ve 3 kişi tarafından değerlendirildi

Herkese iyi geceler. Kendimce birşeyler deniyorum lakin bir yerde takıldım. Kullanıcı kayıt olduktan sonra giriş yapma sayfasına yönlendirip oradan giriş yaptıktan sonra mail inbox a göndermek istiyorum. Bu yönlendirme işlemi için header() kullanım. Başka yöntemler var mı bilmiyorum. Lakin dosya yolları doğru olmasına rağmen gitmiyor yada sayfa değişmiyor.

<?php
session_start();
require_once 'connection.php';
if ($_POST) {
    $userEmail = htmlspecialchars(trim($_POST['userEmail']));
    $userPassword = htmlspecialchars(trim(md5($_POST['userPassword'])));

    if (empty($userEmail) || empty($userPassword)) {
        echo "Boş bırakmayın";
    } else {
        if (filter_var($userEmail, FILTER_VALIDATE_EMAIL)) {
            $query = $db->prepare("SELECT * FROM users WHERE userEmail = ? AND userPassword = ?");
            $query->execute(array($userEmail, $userPassword));

            if ($query->rowCount()) {
                echo "hoş geldin";
                $_SESSION["userEmail"] = $userEmail;
                header('Location: ../mail/');
            } else {
                echo "Böyle bir kullanıcı yok";
            }
        } else {
            echo "$userEmail geçerli bir eposta değil.";
        }
    }
} else {
    echo "POST MALASEF YOK";
    die();
}
<?php
require_once 'connection.php';
if ($_POST) {
    $userName = htmlspecialchars(ucwords(trim($_POST["userName"])));
    $userSurname = htmlspecialchars(ucwords(trim($_POST["userSurname"])));
    $userEmail = htmlspecialchars(trim($_POST['userEmail']));
    $userPassword = htmlspecialchars(trim(md5($_POST['userPassword'])));

    if (empty($userName) || empty($userSurname) || empty($userEmail) || empty($userPassword)) {
        echo "Lütfen Boş Bırakmayın";
    } else {
        if (filter_var($userEmail, FILTER_VALIDATE_EMAIL)) {
            $query = $db->prepare("INSERT INTO users SET
            userName = ?,
            userSurname = ?,
            userEmail = ?,
            userPassword = ?");
            $insert = $query->execute(array(
                $userName, $userSurname, $userEmail, $userPassword
            ));
            include './email-tamplate.php';
            header('Location: ./sign-in');
        } else {
            echo ("$userEmail geçersiz bir eposta");
        }
    }
} else {
    header("Location: ../error.php");
    echo "POST YOK MALASEF";
}
?>

Buradaki headar kısımları çalışmıyor. Form kısmından verileri Tayfun abinin form validation videosu gibi geliyor. Network kısmından baktığım zaman sign-in e gidiyor lakin sayfa değişmiyor.

Cevap yaz
Cevaplar (10)
bariscodefx
1250 gün önce

hmm javascript ile gonderdiysen javascript tarafindan yonlendirmen gerekiyor şunu kullanabilirsin..

Örnek:

window.location = "/accounts/sign-in";
emirhankayabas
1250 gün önce

ajax kullanmıyorum lakin post etme işini formdan değil javasciprt ile gönderiyorum. Tayfun abinin form validation videosundaki gibi.

bariscodefx
1250 gün önce

Ajax mı kullanıyorsun?

emirhankayabas
1250 gün önce

Barış hocam benim accounts klsörüm var ve içinde sign-in ve sign-up dosyalarm var. Sign-up dan sign-in geçemek için ./sign-in şekilde denedim. Ardından gönder dediğim zaman network kısmında baktığım zaman sign-in in html kısmı preview de gözüküyor. Sign - in e gidiyor lakin sayfa değişmiyor. Resim yükeyebilsem daha anlaşılabilir şekilde göstereceğim.

halildemirci
1250 gün önce

Yeni başladıysan php.net üzerinden veya prototurk kanalından php ile ilgili videolara bakabilirsin.
Bunların yanı sıra header() yerine => php tagları arasında echo '<meta http-equiv="refresh" content="Bekleme Süresi (Saniye cinsinden);URL=Gönderilecek Sayfa">'; içerisinde kullanabilirsin.

bariscodefx
1250 gün önce

Dostum, ayrıca header fonksiyonunu kullandıktan sonra bir echo işlemi yapmışsın çalışmaz orası...

bariscodefx
1250 gün önce

Sorunuzu güncellemişsiniz şimdi gördüm, header fonksiyonu dosya yoluna göre çalışmaz link vermeniz gerekir...

Örnek:

header('Location: /panel/uyeler');
emirhankayabas
1250 gün önce

Hocam kusura bakmayın ben resim olarak ekleyecektim lakin ekleyemedim. Düzenledim şimdi. @bariscodefx

bariscodefx
1250 gün önce

Yazdığın kodu atıp, ne yaptığın hakkında biraz daha bilgi verebilirmisin?

mehmet
1250 gün önce

header() fonksiyonunu nasıl ve nerede kullandığınızı bizimle paylaşırsanız yardımcı olabiliriz.