followc
27.03.2018, 11:33:45
Witam,
Nie potrafię niestety dojść dlaczego poniższy kod nie chce działać
do{
$wpdb->insert('wp_galeria_zdjec', array( 'ID_galerii' => $id_galerii,
'URL' =>$url[$ui],
'kolejnosc' => $ui
));
$ui++;
$uj = $ui -1;
}while($url[$uj]);
ID_galerii jest wyliczane wcześniej i nie ma problemu z jej zapisem, tak samo z 'kolejnosc'. Problem dotyczy 'URL' które pobierane jest z $_POST. Jeśli zmienię na zwykły, stały tekst zapisuje, bez problemu. W bazie powinno trafiać do pozycji VARCHAR. Czy ktoś potrafi mnie ukierunkować?
nospor
27.03.2018, 11:38:26
Najwyraznie $url[$ui] nie istnieje. Czemu nie zrobisz
var_dump($url);
var_dump($ui);
by sprawdzic co tam dokladnie siedzi? Nie trzeba byc Sherlockiem by takie cuda robic
followc
27.03.2018, 12:09:41
Tak, zapomniałem dodać, że istnieje. var_dump($url):
array(1) { [0]=> string
(55) "/wp-content/uploads/3mw/1522099361.227/facebook_2_2.png" } array(2) { [0]=> string
(55) "/wp-content/uploads/3mw/1522099361.227/facebook_2_2.png" [1]=> string
(52) "/wp-content/uploads/3mw/1522099361.227/19dllast.png" } array(3) { [0]=> string
(55) "/wp-content/uploads/3mw/1522099361.227/facebook_2_2.png" [1]=> string
(52) "/wp-content/uploads/3mw/1522099361.227/19dllast.png" [2]=> string
(92) "/wp-content/uploads/3mw/1522099361.227/28336185_1982273462090242_2971931929253068969_o 2.jpg" } ...
nospor
27.03.2018, 12:12:56
Hm.... pokaz jeszcze dla pewnosci
var_dump($url[$ui]);
przed insert.
followc
27.03.2018, 12:17:53
string(55) "/wp-content/uploads/3mw/1522099361.227/facebook_2_2.png" string(52) "/wp-content/uploads/3mw/1522099361.227/19dllast.png" string(92) "/wp-content/uploads/3mw/1522099361.227/28336185_1982273462090242_2971931929253068969_o 2.jpg" string(90) "/wp-content/uploads/3mw/1522099361.227/13669385_1813168668905188_1384241611666224281_o.jpg" string(92) "/wp-content/uploads/3mw/1522099366.341/28336185_1982273462090242_2971931929253068969_o 2.jpg" string(52) "/wp-content/uploads/3mw/1522099366.341/19dllast.png" string(55) "/wp-content/uploads/3mw/1522099366.341/facebook_2_2.png" string(90) "/wp-content/uploads/3mw/1522099366.341/13669385_1813168668905188_1384241611666224281_o.jpg" string(92) "/wp-content/uploads/3mw/1522099377.857/28336185_1982273462090242_2971931929253068969_o 2.jpg" string(55) "/wp-content/uploads/3mw/1522099377.857/facebook_2_2.png" string(58) "/wp-content/uploads/3mw/1522099395.262/ace-167052_1280.jpg" NULL
Czyli to wszystko chce się wpakować do zmiennej, gdzie oczekuję tylko pojedynczych części. W zamian w bazie dostaję tylko NULL.
nospor
27.03.2018, 12:27:56
czyli mowisz, ze jak dasz
'URL' =>'blabla',
to ci ladnie wklada ten URL
a gdy dasz
'URL' =>$url[$ui],
to ci wklada wszystko do rekordu procz URL?
Mozesz pokazac jeszcze strukture tabeli wp_galeria_zdjec?
followc
27.03.2018, 12:33:26
Gdy wpiszę 'blabla' dodaje 'blabla', gdy próbuję $url[$ui] w sumie pakuje tylko NULL-a
ID int(6)
ID_galerii int(6)
URL varchar(44)
kolejnosc varchar(6)
nospor
27.03.2018, 12:38:34
Wybacz, ze tak cie mecze, ale czy moglbys pokazac jeszcze raz caly kod po tym jak dodales
var_dump($url[$ui]);
?
ps: kolejnosc to powinna byc raczej INT a nawet TINYINT
followc
27.03.2018, 13:43:31
do{
$wpdb->insert('wp_galeria_zdjec', array( 'ID_galerii' => $id_galerii,
'URL' => $url[$ui],
'kolejnosc' => $ui
));
$ui++;
$uj = $ui -1;
}while($url[$uj]);
A, właśnie. Kolejność to było int, ale wtedy też nie zapisywało. Dopiero po zmianie na varchara dodaje do bazy.
nospor
27.03.2018, 13:53:31
Cytat
Dopiero po zmianie na varchara dodaje do bazy.
Zart jakis... to wyglada jakby tam cos bylo mocne zwalone...no ale to WP to co sie dziwic

Pokaz dla wszystkiego jeszcze
var_dump($ui);
ale powiem ci szczerze ze zaczynam sie poddawac. Nie odgadnione sa sciezki WP
Toshikatsu
27.03.2018, 13:54:07
Nie jestem pewien czy aby przypadkiem "URL varchar(44)" nie jestm problemem.
Czy to aby nie działa tak, że w nawiasie varchar'a podaje się ile maksymalnie znaków może zmieścić?
Spróbuj wrzucić dowony z URL'i z palca dla przetestowania
followc
27.03.2018, 14:06:57
Problemem był varchar(44). Akceptował po prostu krótsze ciągi niż te które próbowałem przesłać... Niby taka oczywista sprawa.
Dziękuję Panowie.
nospor
27.03.2018, 14:54:35
no tak, caly czas przed nosem to bylo... starzeje sie normalnie
@Toshikatsu good catch

NIe mnie jednak zmylil mnie ten nie dzialajacy INT na kolejnosc. Tam tez musi byc cos nie halo swoja droga
followc
27.03.2018, 22:47:03
I tu też winny varchar(44). Błąd w tym miejscu wpływał także na kolejny zapis. Po zwiększeniu dopuszczalnego rozmiaru URL i zmianie kolejnosci z powrotem na INT wszystko gra.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.