Autor | Zpráva | ||
---|---|---|---|
Matej Ševčík Profil |
#1 · Zasláno: 2. 2. 2015, 22:53:13
Ahojte :), mám taký problém že keď chcem odoslať dáta z formuláru do databázy ale vôbec sa mi to nedá. Kód:
$name = $_POST['name']; $email = $_POST['email']; $pass = $_POST['password']; mysql_query('INSERT INTO users (name, email, password) VALUES ('$name', '$email', '$pass')'); |
||
lionel messi Profil |
Matej Ševčík:
„vôbec sa mi to nedá“ 1. Čo to znamená? Objaví sa nejaká chyba? 2. Za mysql_query (mimochodom, ide o funkciu z rodiny, kt. je označená za zastaralú a bude odstránená) doplň toto:
if (mysql_error()) { echo mysql_error; } 3. Vstup do databázy by sa mal escapovať. |
||
Alphard Profil |
#3 · Zasláno: 2. 2. 2015, 22:57:13
|
||
lionel messi Profil |
#4 · Zasláno: 2. 2. 2015, 22:59:13
Alphard:
> lionel messi [#2]: > Jestli správně hádám tu syntaktickou, tak se to k tomu vůbec nedostane. Máte pravdu, všimol som si to až po odoslaní príspevku a stihli ste na to upozorniť počas mojej editácie. |
||
jefitto44 Profil |
#5 · Zasláno: 3. 2. 2015, 07:04:31
mysql_query("INSERT INTO users (name, email, password) VALUES ('".$name."','".$email."','".$password."')"); Apostrofom dáš databázke najavo, že ide o string a úvodzovkou ukončíš "string" a spojíš s iným stringom (s tým, ktorý sa nachádza v premennej). Na spájanie stringov slúži bodka |
||
Matej Ševčík Profil |
#6 · Zasláno: 4. 2. 2015, 11:44:17
To čo poslal jefitto funguje :). lionel messi ak sa môžem spýtať aká funkcia bude namiesto toho? Ja poznám na tento účel iba túto.
|
||
lionel messi Profil |
#7 · Zasláno: 4. 2. 2015, 12:01:24
Matej Ševčík:
„lionel messi ak sa môžem spýtať aká funkcia bude namiesto toho?“ Odporúčam prečítať si celý článok o prechode na MySQLi: www.fisir.tk/itblog/mysql_ |
||
Matej Ševčík Profil |
#8 · Zasláno: 4. 2. 2015, 12:18:58
no asi prejdem na to MySQLi ale tam sa ani nevie pripojit do databaze
|
||
Alphard Profil |
#9 · Zasláno: 4. 2. 2015, 12:36:27
Nebo rovnou dibi, které poskytuje dodatečnou funkčnost, např. pro insert v [#1], kde je vstupem asociativní pole s klíči pojmenovanými jako sloupce v tabulce by stačilo zavolat
$db->insert('users', $_POST)->execute(); $_POST ještě něco jiného, muselo by se to trochu profiltrovat, ale princip je zřejmý.
|
||
jefitto44 Profil |
#10 · Zasláno: 4. 2. 2015, 12:58:20
mysqli_connect, alebo PDO, alebo dibi, ako píše alphard. mysql je nielen deprecated ale tiež aj nie najbezpečnejšou variantou. Zmienené tri sú asi najpoužívanejšie
|
||
Časová prodleva: 10 let
|
0