Autor | Zpráva | ||
---|---|---|---|
lachim15 Profil |
#1 · Zasláno: 6. 10. 2019, 11:30:38
Ahoj,
Kamarád má vlastní server a učí se s ním pracovat. Bohužel s tímto si nevíme rady a potřebujeme poradit. Mysql tabulka: id,name,login_password,ip,mail,level,gdpr,gdpr_time,image,karma Nejspíš bude někde problém v nastavení, jakmile odešlu mysql dotaz INSERT a nevypíšu všechny sloupce v tabulce, tak se dotaz neprovede: mysqli_query($pripoj, "INSERT INTO users(name,login_password,ip,mail,level,gdpr,gdpr_time) VALUES('$protect_post_name','$new_password','".$_SERVER["REMOTE_ADDR"]."','$protect_post_mail','1','yes','".StrFTime("%d.%m.%Y|%H:%M", Time())."')"); Jakmile ale vypíšu všechny sloupce (krom ID - které je AUTO_INCREMENT), dotaz se úspěšně provede: mysqli_query($pripoj, "INSERT INTO users(name,login_password,ip,mail,level,gdpr,gdpr_time,image,karma) VALUES('$protect_post_name','$new_password','".$_SERVER["REMOTE_ADDR"]."','$protect_post_mail','1','yes','".StrFTime("%d.%m.%Y|%H:%M", Time())."','','0')"); Jde někde nastavit na serveru / v mysql, aby se nevyplněná pole v dotazu zapsala automaticky jako prázdná, nebo s nastavenou defaultní hodnotou? Problém je u všech INSERT dotazů, ne jen u tohodle. |
||
Kajman Profil |
#2 · Zasláno: 6. 10. 2019, 12:03:15
Zkontrolujte ve struktuře tabulky, zda je u vynechaný sloupců povolená null hodnota nebo tam je nastavená defaultní hodnota.
|
||
Tomášeek Profil |
#3 · Zasláno: 6. 10. 2019, 12:14:54
lachim15:
Přečti si chybovou hlasku, kterou sql vrací a rid se ji. |
||
lachim15 Profil |
#4 · Zasláno: 6. 10. 2019, 13:05:14
Kajman:
U "image" mám v tabulce formát "text", který nemůže mít defaultní hodnotu. Místo toho bych měl použít "null"? Všude jinde na jiných serverech mi to funguje i bez tohoto použití. Tomášeek: Na stránce mi to přímo nic nevypisuje, čekám tedy až přijde kamarád z práce a vytáhne mi logy ze složky, do kterých nemám přístup. |
||
Kajman Profil |
#5 · Zasláno: 6. 10. 2019, 13:55:37
Je o to, jestli je u sloupce nastaven flag NOT NULL nebo ne. Ukažte, co vrací sql příkaz
show create table users Chybu si můžete vypsat sám www.php.net/manual/en/mysqli.error.php |
||
lachim15 Profil |
Dotaz na mysql:
z toho moc vidět není, vyfotím celou mysql: EDIT: K těm chybovým hláškám, to je super věc, díky za tip. "Field 'image' doesn't have a default value" Jakou mám zvolit default value, když používám "text"? I když možná bude lepší lehce upravit aplikaci a rovnou to přepsat na VARCHAR a bude klid. |
||
Kajman Profil |
#7 · Zasláno: 6. 10. 2019, 15:46:11
Ve sloupci nulový musí být povolené Ano u hodnot, které mohou nabývat null hodnot.
|
||
lachim15 Profil |
#8 · Zasláno: 7. 10. 2019, 09:40:13
Kajman:
Dobře, díky za vysvětlení :) Po úpravách to funguje. |
||
Časová prodleva: 5 let
|
0