<?php $sites = array ("news" => "inc/news.php", "register" => "inc/rejestracja.php", "logowanie" => "inc/logowanie.php", "aktywacja" => "inc/aktywacja.php", "kontakt" => "inc/kontakt.php", "uzytkownik" => "inc/zmiana-danych.php"); if ($_GET["str"]!="") { if ($sites[$_GET["str"]]) { include($sites[$_GET["str"]]); } else { include("inc/error.php"); } } else { include("inc/news.php"); } ?>
I teraz tak.. Znajomy (Uhutaf z Wojborku) pisał mi kiedyś, że w adresie, przy GET, nie może być pod rząd dwa razy znaku "=". Weryfikacja wygląda tak:
<?php if ($_GET['weryfikacja'] == 'potwierdz') { include 'db.php'; // połączenie się z bazą danych $tabela = 'uzytkownik'; // zdefiniowanie tabeli MySQL $kod = htmlspecialchars(stripslashes(strip_tags(trim($_GET['kod']))), ENT_QUOTES); // filtrowanie $_GET['kod'] // jeżeli kod znajduje się URL, skrypt najpierw patrzy czy użytkownik ma aktywne konto // jeżeli nie ma, wtedy zmienia się jego status, jeżeli nie upłynęło 48 godzin od rejestracji WHERE kod='$kod' and status=1"); exit; } else { WHERE data<=DATE_SUB(NOW(),INTERVAL 2 DAY) and status=0"); SET status='1', data=NOW() WHERE kod='$kod' and status=0"); WHERE kod='$kod' and status=1"); } } // jeżeli został wprowadzony zły link, wyświetla się błąd } } ?>
Przykładowy email weryfikacyjny wygląda następująco:
moja-strona.pl/index.php?str=weryfikacja=weryfikacja&kod=KOD
Proszę o szybką pomoc. Tak, jak wczoraj - każdy post otrzyma "pomógł".
Pozdrawiam!