Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL]update, UPDATE w for()
byczek1984
post
Post #1





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 29.10.2008

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


Witam
Mam problem z procedura UPDATE. Przedstawie krotki przykladowy kod

  1. $number=3;
  2. FOR($i=0; $i<$number, $i++)
  3. {
  4. echo $row[$i]; //tutaj wyswietla mi cyfry 1,2,3
  5. $query="UPDATE nazwa_tabeli set kolumna=$row[$i] where id=2";
  6. mysql_query($query);
  7. }

I tutaj ten UPDATE podmienia mi, ale zamiast podmienic na 3 cyfry (1,2,3) podmienia mi tylko na ostatnio, czyli 3. Jak zrobic zeby podmienil mi na 3 wszystkie cyfry, czyli 1,2,3.
Dzieki
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




przeciez za kazdym razem podmieniasz ten sam rekord. nic wiec dziwnego, ze na koniec bedzie mial on ostatnio wprowadzoną wartosc

przenosze na przedszkole
Go to the top of the page
+Quote Post
janusz85
post
Post #3





Grupa: Zarejestrowani
Postów: 26
Pomógł: 5
Dołączył: 29.07.2009

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


Popraw warunek przy WHERE. A tak profilaktycznie dorzuć jeszcze cudzysłowy.
Go to the top of the page
+Quote Post
Fifi209
post
Post #4





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(janusz85 @ 4.08.2009, 09:48:28 ) *
Popraw warunek przy WHERE. A tak profilaktycznie dorzuć jeszcze cudzysłowy.


Chyba go nie zrozumiałeś. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Co do profilaktycznych cudzysłowów...jeżeli będą tam liczby to nie widzę potrzeby aby obciążać serwer mysql konwertowaniem na int...
Go to the top of the page
+Quote Post
byczek1984
post
Post #5





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 29.10.2008

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


Wiec wie ktos jak zrobic zeby podmienilo mi 3 cyfry a nie 1 (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?
Go to the top of the page
+Quote Post
Andaramuxo
post
Post #6





Grupa: Zarejestrowani
Postów: 150
Pomógł: 15
Dołączył: 18.03.2009

Ostrzeżenie: (10%)
X----


Najpierw zamienia na 1, później na 2, a w finale na 3, czego Ty chcesz? Ale te 3 cyfry maja być po przecinku?
Go to the top of the page
+Quote Post
Fifi209
post
Post #7





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(byczek1984 @ 4.08.2009, 10:15:40 ) *
Wiec wie ktos jak zrobic zeby podmienilo mi 3 cyfry a nie 1 (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?


Najpierw zastanów się jak działa pętla for. Powiedz dokładniej co chcesz uzyskać.
Go to the top of the page
+Quote Post
byczek1984
post
Post #8





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 29.10.2008

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


Chce zeby w rekordzie gdzie zrobie UPDATE bylo 1,2,3 , wiem jak dzial petla for, ze ona mi tylko podmieni na ostania cyfre czyli 3. dlatego pisze tutaj zeby ktos mi pomogl.
Go to the top of the page
+Quote Post
nospor
post
Post #9





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
dlatego pisze tutaj zeby ktos mi pomogl.
Nie napisales od razu o co ci chodzi, pokazales kod co robi zupelnie co innego, wiec sie nie denerwuj. ludzie chca ci pomoc, ale jak nie wiedzą o co ci chodzi to ciezko bedzie.

Cytat
Chce zeby w rekordzie gdzie zrobie UPDATE bylo 1,2,3
To raz, ze pole musi byc typu tekstowego, np. VARCHAR lub TEXT, a dwa ze musisz uzyc funckcji CONCAT_WS. wiecej masz w manualu mysql.

ps: a nie mozesz polaczyc tych liczb w php, a potem juz ciag 1,2,3 zapisac od razu do bazy?
Go to the top of the page
+Quote Post
Fifi209
post
Post #10





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


o coś takiego chodzi?

  1. <?php
  2.  
  3.    $x;
  4.    
  5.    for ($i=1; $i < 4; $i++)
  6.        $x[] = $i;
  7.        
  8.    $sql = 'UPDATE nazwa_tabeli set kolumna="'.implode(',', $x).'" where id=2';
  9.    
  10.    echo $sql;
  11.    
  12. ?>
Go to the top of the page
+Quote Post
byczek1984
post
Post #11





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 29.10.2008

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


Aha no faktycznie, polacze a potem zapisze do bazy danych , dzieki

Temat zakonczony
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 13:30