Diskuze: Nejde mi zapsat PHP proměnná do Mysql Datábáze
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 15 zpráv z 15.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Jsi si jistý, že tam místo ID máš dosadit "NULL"? K čemu by pak to ID bylo, kdyby všechny záznamy měly ID null? Nevím, jak v MySQL, ale u klasického SQL se to ID v INSERT dotazu ani neuvádí...
A vrací to nějaký error? Jinak bych zkusil dát nějakou hodnotu do toho id, pokud to máš jako primární klíč tak ukládat to s null nedává moc smysl, dále bych vyhodil mysqli a přečetl si tady na webu jako pracovat s PDO a začal ho používat.
Hází to errory jen v phpmyadmin nolovy řádek se vrátil.PDO jsem zkoušel tam to samé.
ID do dotazu nevyplňuj jen v případě že más v phpmyadmin zaškrtunté AUTO_INCREMENT u id. Ten se postará že každý záznam dostane (pořadové) číslo.
Ahoj, vyzkoušej tohle a napiš, k čemu jsi došel. Použiji poznámky Michal Štěpánek a Zdeněk Srb.
SQL Injection můžu vyřešit před publikaci webu na server.Umí **var_dump() ** i předělat příkaz na správný?
No, na to bych nespoléhal. Až se ti projekt rozroste, nebudeš ani vědět, kde dotazy máš.
Var_dump() je debuggovací funkce. Umí jen vypisovat obsahy proměnných a nějaké doplňující informace k tomu.
dobře napsal ti zprávu co mi ten var_dump() udělal.
http://php.net/…e-string.php
Zabezpeceni proti sql injekci
$query = "... WHERE string='%s' AND digit=%d";
$query = sprintf($query, mysqli_real_escape_string($value1), $value2);
Nebo se da pouzit vsprintf pro array.
Jan Straka - Tomu, co pises vubec nerozumim. Pis celou vetou, nevynechavej pro tebe jasne formulace. Zkusim popsat jinymi slovy, co ti napsali uz oba Michalove.
Upravovat dotazy až před publikací na server je ta nejhorší možná varianta. Programuj správně hned "napoprvé" a nemusíš pak nic upravovat, abys to ochránil proti možným útokům. Při publikaci si totiž nemusíš vzpomenout na všechny vložené příkazy a až ti někdo tvou práci zničí, kvůli jednomu zapomenutému "neupravenému" dotazu, budeš se tlouct do hlavy a rvát si vlasy za zbytečně ztracený čas, protože jsi to nenapsal správně rovnou...
google = mysqli php query example
php "..." string, \" nebo ', "...\"...'..."
php '...' string, " nebo \', '..."...\'...'
"..."..." - tohle je nesmysl, protoze druha uvozovka ukoncuje string a ta cast
za ni bude oznacena za error
sql "...sloupec..." zpetna uvozovka, u klavesy Q nebo 1
sql string "...'text'..."
sql cislo "...123..."
To mas marne. Ucitel jim ve skole ukazuje kody co nejvic zjednodusene. Coz
pak vede k tomu, ze je novacku pln forum a ptaji se na uplne zaklady, ktera ta
zdanlive slozitejsi konstrukce resi.
Treba u nas do dneska neakceptovali utf kodovani pro sql tabulky. Stale ukladaji
ve w1250. Nabizel jsem jim, ze jim programy upravim pro utf tabulky. Odmitly.

string(191) "INSERT INTO accounts ( username, password, bgcolor", email) VALUES ( "admin", "8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918", "#9112b7", "straka.jan5@seznam.cz") tohle mi to udělalo když jsem použil var_dump() na escapováný uživatelský input
var_dump neni echo a prohlizec - zobrazit zdrojovy kod.
Nicmene, ten sql dotaz ma temer vsechny uvozovky spatne, si myslim. Jak jsem
psal, u sloupcu tabulek se pouzivaji zpetne jednoduche. Ty tam mas dvojite. To
jsem nikdy nezkousel, ale domnivam se, ze to nebude fungovat. Zkus si najit par
prikladu googlem.
google = sql query example
Zobrazeno 15 zpráv z 15.
