NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

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.

Aktivity
Avatar
Václav Kutiš:26.1.2017 0:11

Ahoj, jelikož tak nějak teprve začínám celkově.. Tak bych se rád optal.

Potřebuji aby mi daný alert co vidíte nahoře na obrázku vyběhl pouze, když se moje IP bude rovnat IP z databáze..

například

$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-success" role="alert">';
   echo '<strong>Nastal problém!</strong> Z této IP adresy je již účet registrován!';
   echo '</div>';
   die("Nastal problém! Z této IP adresy je již účet registrován!");
}

Ale takto se mi to přesměruje okamžitě na "die", mohl by mi někdo poradit? Je to pravděpodobně primitivní, ale nevím si rady a tak bych rád dostal poučeno :D

Předem děkuji

Odpovědět
26.1.2017 0:11
Štěstí tvého života záleží na druhu tvých myšlenek. - Marcus Aurelius
Avatar
Odpovídá na Václav Kutiš
Neaktivní uživatel:26.1.2017 3:41

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.

Nahoru Odpovědět
26.1.2017 3:41
Neaktivní uživatelský účet
Avatar
Neaktivní uživatel:26.1.2017 3:45

Pro správce: Proč proboha pořád mizí tlačítko edit(problikne jen na vteřinu, možná miň, MacOS Sierra/Chrome? ...........

Nahoru Odpovědět
26.1.2017 3:45
Neaktivní uživatelský účet
Avatar
Václav Kutiš:26.1.2017 12:37
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?

Nahoru Odpovědět
26.1.2017 12:37
Štěstí tvého života záleží na druhu tvých myšlenek. - Marcus Aurelius
Avatar
Václav Kutiš:26.1.2017 13:00

Problém jsem vyřešil přepsáním kódu, a došel jsem na to. Díky

Akceptované řešení
+5 Zkušeností
Řešení problému
Nahoru Odpovědět
26.1.2017 13:00
Štěstí tvého života záleží na druhu tvých myšlenek. - Marcus Aurelius
Avatar
Neaktivní uživatel:26.1.2017 14:29

mysql_* funkce jsou nebezpečné, zastaralé a nepodporované v php7.
Zvaž přechod na PDO.

Nahoru Odpovědět
26.1.2017 14:29
Neaktivní uživatelský účet
Avatar
Lava
Člen
Avatar
Lava:26.1.2017 15:43

Alebo aspoň na mysqli (jednoduchší prechod začiatočníka na mysqli ako na PDO podľa mňa)

Nahoru Odpovědět
26.1.2017 15:43
Aspartám, sacharín, to je môj vitamín
Avatar
Jan Lupčík
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Jan Lupčík:26.1.2017 22:22

V PHP7 jsou už odstraněné, ne?

Nahoru Odpovědět
26.1.2017 22:22
TruckersMP vývojář
Avatar
Odpovídá na Jan Lupčík
Neaktivní uživatel:27.1.2017 3:00

Máš pravdu,nebyl jsem si jistý :)

Nahoru Odpovědět
27.1.2017 3:00
Neaktivní uživatelský účet
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 9 zpráv z 9.