Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Czemu ta linijka danych nie dodaje mi się do bazy MySQL?
Saki
post
Post #1





Grupa: Zarejestrowani
Postów: 240
Pomógł: 2
Dołączył: 5.12.2010
Skąd: Fulda

Ostrzeżenie: (0%)
-----


Witam, mam dość dziwny problem a więc:

Próbuje wykonać takie zadanie:

  1. mysql_query('UPDATE `dane` SET `skils` = '.serialize($arraySkil).' WHERE `id` = '.$user_id.' LIMIT 1') or die("error"); // nie działa


To wygląda tak:
|
V
  1. $sql = "UPDATE `dane` SET `skils` = \"a:15:{i:0;s:13:\"skil1=sdfsdfs\";i:1;s:13:\"skil1R=fsdfsd\";i:2;s:13:\"skil2=sfsdfsd\";i:3;s:10:\"skil2R=sdf\";i:4;s:14:\"skil3=fsdfsdsd\";i:5;s:15:\"skil3R=sdfsdsdf\";i:6;s:11:\"skil4=fsdfd\";i:7;s:10:\"skil4R=sdf\";i:8;s:11:\"skil5=sdsdf\";i:9;s:13:\"skil5R=sdfsdf\";i:10;s:9:\"skil6=ssd\";i:11;s:12:\"skil6R=dfsdf\";i:12;s:7:\"skil7=f\";i:13;s:13:\"skil7R=sdfsdf\";i:14;s:14:\"addSkil=Zapisz\";}\" WHERE `id` = 1 LIMIT 1";

I czemu to mi się nie chce dodać do bazy?
^

A to dodaje:
  1. mysql_query('UPDATE `dane` SET `skils` = "AAAAAAAAAAAAA" WHERE `id` = '.$user_id.' LIMIT 1') or die("error"); // działa


Ten post edytował Saki 31.10.2011, 17:37:39


--------------------
Moje serwisy: services.itunix.eu | spytajsie.com

Server: Debian; Desktop: Mac Mini 10.8.1, ArchLinux XFCE
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


  1. mysql_query('UPDATE `dane` SET `skils` = "'.serialize($arraySkil).'" WHERE `id` = '.$user_id.' LIMIT 1') or die("error"); // nie działa


voila wink.gif


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
Saki
post
Post #3





Grupa: Zarejestrowani
Postów: 240
Pomógł: 2
Dołączył: 5.12.2010
Skąd: Fulda

Ostrzeżenie: (0%)
-----


Cytat(Sephirus @ 31.10.2011, 18:13:38 ) *
  1. mysql_query('UPDATE `dane` SET `skils` = "'.serialize($arraySkil).'" WHERE `id` = '.$user_id.' LIMIT 1') or die("error"); // nie działa


voila wink.gif


Też tak próbowałem i niestety nie działa. Ale poradziłem sobie w inny sposób. Przed dodanie do bazy koduje do base64. smile.gif


--------------------
Moje serwisy: services.itunix.eu | spytajsie.com

Server: Debian; Desktop: Mac Mini 10.8.1, ArchLinux XFCE
Go to the top of the page
+Quote Post
Sephirus
post
Post #4





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


A próbowałeś wrzucić to do mysql_real_escape_string(...)questionmark.gif


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
adbacz
post
Post #5





Grupa: Zarejestrowani
Postów: 532
Pomógł: 24
Dołączył: 15.04.2011
Skąd: Kalisz

Ostrzeżenie: (0%)
-----


Własnie, spróbuj zrobić tak:
  1. $data = mysql_real_escape_string(serialize($arraySkil));
  2. mysql_query('UPDATE `dane` SET `skils` = "'.$data.'" WHERE `id` = '.$user_id.' LIMIT 1') or die("error");


PS. Piszesz w temacie, że dodaje sie tylko część, możesz pokazać jaka to część? Może to nam coś da do myślenia.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 20:33