• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Strona się nie zmienia.

VPS Starter Arubacloud
0 głosów
137 wizyt
pytanie zadane 21 grudnia 2016 w PHP przez Mistrz0000000 Bywalec (2,780 p.)

Witam, przeniosłem swoją stronę z darmowego hostingu na az i mam jeden problem. mianowicie nie działa mi ten kod 

        case'payment_auth':
            if ($_SESSION['id']) {
                if($_SESSION['product_id']) {
                    if($_COOKIE['block'] !== "blocked")
                    {
                        $dynamic_content = 'templates/dynamic_content/oferta/payment_accepted.tpl';
                        include('sites/oferta.php');
                    }else{
                        header('location: '.$url);
                    }
                }else{
                    header('location: '.$url);
                }
            } else {
                header('location: '.$url);
            }
            break;

na darmowym hostingu działało jak powinno. 

1 odpowiedź

0 głosów
odpowiedź 21 grudnia 2016 przez HaKIM Szeryf (87,590 p.)
Może ścieżki się zmieniły?

Sprawdź co siedzi w $url i upewnij czy się zgadza po przejściu na nowy hosting.

Jeżeli skrypt zwraca błąd, podeślij go.
komentarz 21 grudnia 2016 przez Mistrz0000000 Bywalec (2,780 p.)
Nie zwraca błędu, ścieżki są dobre, a akurat $url się zgadza bo $url = "http://polygonlombard.pl/";
komentarz 21 grudnia 2016 przez HaKIM Szeryf (87,590 p.)
Tak w sumie to nie zapytałem.

Co dokładnie nie działa?

Od którego moment/linii się sypie?
komentarz 21 grudnia 2016 przez Mistrz0000000 Bywalec (2,780 p.)

myślę że tytaj gdzieś 

            if ($_SESSION['id']) {
                if($_SESSION['product_id']) {
                    if($_COOKIE['block'] !== "blocked")
                    {
                        $dynamic_content = 'templates/dynamic_content/oferta/payment_accepted.tpl';
                        include('sites/oferta.php');
bo session id to czy zalogowany, product id jest nadawany przy zakupie a blocked jest zerowane przed transakcją

 

komentarz 21 grudnia 2016 przez HaKIM Szeryf (87,590 p.)
O ile nie korzystasz z debugger'a zrób to po spartańsku:

Przy każdym else/if daj wiadomość która byłaby wzmianką gdzie program się zatrzymał.

W podanym przez Ciebie kodzie może być zbyt wiele okazji do popełnienia błędu.
komentarz 21 grudnia 2016 przez HaKIM Szeryf (87,590 p.)

Spróbuj dołączyć plik wraz z __DIR__ . ''.

Przykład:

include(__DIR__ . 'sites/oferta.php');
function switchMe($i)
{
    $_SESSION['id'] = 1;
    $_SESSION['product_id'] = 2;
    $url = '/';
    $_COOKIE['block'] = false;

    switch ($i) {
        case'payment_auth':
            if ($_SESSION['id']) {
                if ($_SESSION['product_id']) {
                    if ($_COOKIE['block'] !== "blocked") {
                        $dynamic_content = 'templates/dynamic_content/oferta/payment_accepted.tpl';
                        include('sites/oferta.php');
                    } else {
                        header('location: ' . $url);
                    }
                } else {
                    header('location: ' . $url);
                }
            } else {
                header('location: ' . $url);
            }
            break;
    }
}

switchMe('payment_auth');

Mi tam śmiga, tylko nie mam odpowiednich plików.

Btw. Twój kod można skrócić o połowę. Jest zbyt późno, nie zrobię tego za Ciebie. ;) Zwróć szczególną uwagę na rzeczy powtarzające się jak i if'y które w sumie spełniają ten sam warunek i mogłby być włożone do 1.

komentarz 22 grudnia 2016 przez Mistrz0000000 Bywalec (2,780 p.)
Coś tam pogrzebałem i teraz jest

<b>Warning</b>: Cannot modify header information - headers already sent by (output started at /sites/oferta.php:31) in <b>/templates/dynamic_content/oferta/payment_accepted.tpl</b> on line <b>21</b><br />

Podobne pytania

0 głosów
1 odpowiedź 406 wizyt
0 głosów
3 odpowiedzi 145 wizyt

93,024 zapytań

141,986 odpowiedzi

321,290 komentarzy

62,371 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...