Diskuze: Zobrazení a následovně die();
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 9 zpráv z 9.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Nepřesměruje se to okamžitě na die. Nejdříve se zobrazí echo a potom
die který veškerý content smaže a zobrazí svojí hlášku.
Prostě nepouživéj die.
Pro správce: Proč proboha pořád mizí tlačítko edit(problikne jen na vteřinu, možná miň, MacOS Sierra/Chrome? ...........
if(IsSet($_POST['register']) && !empty($_POST["username"]) && !empty($_POST["email"]) && !empty($_POST["email2"]) && !empty($_POST["password"]) && !empty($_POST["password2"]))
{
mysql_connect("host","server","heslo");
mysql_select_db("db");
$ip = $_SERVER['REMOTE_ADDR'];
$porovnat = mysql_query("SELECT * FROM uzivateleServer WHERE ip='$ip'");
$yy = mysql_num_rows($porovnat);
if($yy > 0)
{
echo '<div class="alert alert-danger" role="alert">';
echo '<strong>Nastal problém!</strong> Z této IP adresy je již účet registrován!';
echo '</div>';
//exit("Nastal problém! Z této IP adresy je již účet registrován!");
mysql_close();
}
$username = htmlspecialchars($_POST['username']);
$email = htmlspecialchars($_POST['email']);
$email2 = htmlspecialchars($_POST['email2']);
$password = MD5(mysql_real_escape_string($_POST['password']));
$password2 = MD5(mysql_real_escape_string($_POST['password2']));
if($password != $password2)
{
echo '<div class="alert alert-danger" role="alert">';
echo '<strong>Nastal problém!</strong> Vaše hesla se neshodují!';
echo '</div>';
//exit("Nastal problém! Z této IP adresy je již účet registrován!");
mysql_close();
}
if($email != $email2)
{
echo '<div class="alert alert-danger" role="alert">';
echo '<strong>Nastal problém!</strong> Vaše emaily se neshodují!';
echo '</div>';
//exit("Nastal problém! Z této IP adresy je již účet registrován!");
mysql_close();
}
if(strlen($_POST['password']) < 6)
{
echo '<div class="alert alert-danger" role="alert">';
echo '<strong>Nastal problém!</strong> Vaše heslo musí obsahovat minimálně 6 znaků!';
echo '</div>';
//exit("Nastal problém! Z této IP adresy je již účet registrován!");
mysql_close();
}
$porovnaty = mysql_query("SELECT * FROM uzivateleServer WHERE username='$username'");
$yyy = mysql_num_rows($porovnaty);
if($yyy > 0)
{
echo '<div class="alert alert-danger" role="alert">';
echo '<strong>Nastal problém!</strong> Tento uživatelský účet je již zaregistrov!';
echo '</div>';
//exit("Nastal problém! Z této IP adresy je již účet registrován!");
mysql_close();
}
mysql_query("INSERT INTO uzivateleServer(username,email,password,ip) VALUES('$username','$email','$password','$ip')"); // zapsání jména, emailu, hesla a ip do databaze.
echo "hotovo";
}
Mám to udělané takhle nějak.. ale vyběhnou mi následovně errory, což chápu, jelikož ukončím připojení k db, ale program pokračuje, poradíte mi někdo?
Problém jsem vyřešil přepsáním kódu, a došel jsem na to. Díky
mysql_* funkce jsou nebezpečné, zastaralé a nepodporované v php7.
Zvaž přechod na PDO.
Zobrazeno 9 zpráv z 9.