Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
marasol
Člen
Avatar
marasol:27.2.2017 18:57

Zdravím, jsem úplný začátečník a to i v PHP. Po spuštění php souboru se mi ukazuje několik chyb. Chtěl bych se zeptat co s nimi. Část scriptu posílám k tomu.

Fatal error: Call to undefined function mysgli_connect() in C:\wamp64\www\re­gistrace.php on line 5

-> tady chápu, že je něco v nepořádku ve scriptu na 5 řádku. Hledal jsem, ale na internetu a i podle videa by to tak mělo být.
Díky za odpovědi. ;-)

session_start();

// connect to database
$db = mysgli_connec­t("localhost", "root", "", "authentication");

if (isset($_POST['re­gister_btn'])) {
session_start();
$username = mysgl_real_es­cape_String($_POS­T['username']);
$email = mysgl_real_es­cape_String($_POS­T['email']);
$password = mysgl_real_es­cape_String($_POS­T['password']);
$password2 = mysgl_real_es­cape_String($_POS­T['password2']);
$wallet = mysgl_real_es­cape_String($_POS­T['wallet']);

if ($password == password2) {
// create user
$password = md5($password); //hash password before storing for security purposes
$sgl = "INSERT INTO users(username, email, password, wallet) VALUES('$username', '$email', '$password')";
mysgli_query($db, $sgl);

 
Odpovědět
27.2.2017 18:57
Avatar
Pavel Suk
Člen
Avatar
Odpovídá na marasol
Pavel Suk:27.2.2017 19:02

Zdravím,
Pokud se nepletu, tak správně se to píše mysqli_connect a to platí asi pro všechny řádky kodu..

session_start();

// connect to database
$db = mysqli_connect("localhost", "root", "", "authentication");

if (isset($_POST['register_btn'])) {
$username = mysql_real_escape_String($_POST['username']);
$email = mysql_real_escape_String($_POST['email']);
$password = mysql_real_escape_String($_POST['password']);
$password2 = mysql_real_escape_String($_POST['password2']);
$wallet = mysql_real_escape_String($_POST['wallet']);

if ($password == password2) {
// create user
$password = md5($password); //hash password before storing for security purposes
$sgl = "INSERT INTO users(username, email, password, wallet) VALUES('$username', '$email', '$password')";
mysqli_query($db, $sgl);

S tím že session_start(); ti stačí zavolat jen na začátku, nikoliv vícekrát myslím :)

Editováno 27.2.2017 19:04
 
Nahoru Odpovědět
27.2.2017 19:02
Avatar
marasol
Člen
Avatar
Odpovídá na Pavel Suk
marasol:27.2.2017 19:07

Jak jsem si toho mohl nevšimnout :-) opravil jsem nějaké středníky apod. dokonce jsem kontroloval i shodu názvů databáze a toho co jsem zadával do scriptu. Děkuji moc :D snad to časem dotáhnu dál.

 
Nahoru Odpovědět
27.2.2017 19:07
Avatar
Pavel Suk
Člen
Avatar
Odpovídá na marasol
Pavel Suk:27.2.2017 19:09

Mimochodem,

if ($password == password2) {
// create user
$password = md5($password); //hash password before storing for security purposes
$sgl = "INSERT INTO users(username, email, password, wallet) VALUES('$username', '$email', '$password')";
mysqli_query($db, $sgl);

Nevím jestli se ti tahle podmínka vykoná, ale teda za mě myslím že ne..

Pokud by to házelo chybu, tak bych ho nahradil

if ($password == $password2 ) {
// create user
$password = md5($password); //hash password before storing for security purposes
$sgl = "INSERT INTO users(username, email, password, wallet) VALUES('$username', '$email', '$password')";
mysqli_query($db, $sgl);
 
Nahoru Odpovědět
27.2.2017 19:09
Avatar
marasol
Člen
Avatar
Odpovídá na Pavel Suk
marasol:27.2.2017 19:11

Ano, mám tam plno chyb. Ale jen tak se člověk učí. Jdu to znovu zkontrolovat. Ještě jednou děkuji.

 
Nahoru Odpovědět
27.2.2017 19:11
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 5 zpráv z 5.