Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2014-03-17 14:14:39

  debbie - Użytkownik

debbie
Użytkownik
Zarejestrowany: 2006-09-19

Mysql i tworzenie inserta

Witam, Mam taki problem odnośnie stworzenia inserta za pomocą wyników z pętli while.

mam:

Kod:

while ($wynik = mysql_fetch_array($zapytanie)) 
        {
                 
                $dla_inserta = "$zmienna='$_POST[$zmienna]'";
        echo "INSERT INTO nieruchomosci.dane_nieruchomosci1 SET $dla_inserta";
                 }

Jak widać pętla zwórci np 20 insertów z danymi - nazwą kolumny $zmienna i danej która wpadnie do tego rekordu $_POST[$zmienna].
INSERT..... INSERT.... INSERT.... itd.

A chodzi mi o to żeby stworzyć jednego inserta z tymi danymi po przecinku (zamiast tworzyć 20 insertów to stworzyć jednego który będzie
zawierał 20 różnych danych do dodania. ( nie zwracajcie uwagi na to że jest tam echo bo narazie po prostu go wyświetlam ).
Wiem że z INSERT musze wyskoczyć poza pętle. Ale zastanawiam się czym najprościej skonstruować zmienną zawierającą te wszystkie dane
aby poza while wrzucić:

INSERT INTO nieruchomosci.dane_nieruchomosci1 SET $dla_inserta

i będzie grało.
Wdzięczny za pomoc :)


debbie
[color=blue]Wrócę jak zjem zupę i drugie danie - tyle[/color]
[color=blue]a oto ta zupa:[/color]

Offline

 

#2  2014-03-17 14:50:00

  winnetou - złodziej wirków ]:->

winnetou
złodziej wirków ]:->
Skąd: Jasło/Rzeszów kiedyś Gdańs
Zarejestrowany: 2008-03-31
Serwis

Re: Mysql i tworzenie inserta

Kod:

$co_wrzucic="";
while ($wynik = mysql_fetch_array($zapytanie))  {
 $co_wrzucic=$co_wrzucic.", (".$_POST['$zmienna'].")";
}
$query="INSERT INTO $tabela($pole) VALUES $co_wrzucic";
mysql_query($query);

siakoś tak powinno działać


LRU: #472938
[b]napisz do mnie:[/b] ola@mojmail.eu
[url=http://valhalla.org.pl]Hołmpejdż[/url] | [url=http://valhalla.org.pl/foto]Galerie[/url] | [url=http://valhalla.org.pl/tech]"Twórczość"[/url] || [url=http://img.munn.in]Free Image Hosting[/url]

Offline

 

#3  2014-03-19 11:15:15

  debbie - Użytkownik

debbie
Użytkownik
Zarejestrowany: 2006-09-19

Re: Mysql i tworzenie inserta

Dzięki:). Ale mam jeszcze pytanie odnośnie takiego kawałka (jeżeli to nie problem):

Kod:

for ($i=0; $i<500; $i++)
        {
                                                    
        echo $_POST[$zmienna][$i];
                                        
        }

kod wyświetla mi wszystkie zaznaczone checkboxy. I rozkminiam właśnie w jaki sposób wrzucić je wszystkie do zmiennej
poza pętlą for. W podobny sposób jak wcześniej nie chce działać.

a dokładnie chciałbym uzyskać coś takiego:

Kod:

for ($i=0; $i<500; $i++)
        {
                                                    
        $wszystkie_zazn_checkbox = $_POST[$zmienna][$i];
                                        
        } 
echo $wszystkie_zazn_checkbox oddzielone jeden od drugiego znakiem " | ".

Druga sprawa to wartość 500 w pętli for (for ($i=0; $i<500; $i++)) jest wpisana na sztywno
i może trochę utrudniać życie. Więc kombinuje także nad zliczeniem zaznaczonych checkbox.
Dzięki bardzo za pomoc.

OK. Zliczanie mam. (dziwne że czasami o najprostszych rzeczach się zapomina )

Kod:

$counter = 0;
                                                foreach ($_POST[$zmienna] as $value) {

                                                    $counter++;
                                                    
                                                
                                                                }
$ilosc = $counter;

Dalej jednak kombinuje z pierwszym problemem.

Ostatnio edytowany przez debbie (2014-03-19 12:07:26)


debbie
[color=blue]Wrócę jak zjem zupę i drugie danie - tyle[/color]
[color=blue]a oto ta zupa:[/color]

Offline

 

#4  2014-03-19 12:53:24

  winnetou - złodziej wirków ]:->

winnetou
złodziej wirków ]:->
Skąd: Jasło/Rzeszów kiedyś Gdańs
Zarejestrowany: 2008-03-31
Serwis

Re: Mysql i tworzenie inserta

co do długości $_POST spróbuj tak

Kod:

for ($i=0; $i<count($_POST); $i++){
pętla
}

A co do wpisania wszytkiego w jedną zmienną:

Kod:

$wszystkie_zazn_checkbox='';
for ($i=0; $i<count($_POST); $i++){
$wszystkie_zazn_checkbox=$wszystkie_zazn_checkbox.'|'.$_POST[$zmienna][$i];
}

LRU: #472938
[b]napisz do mnie:[/b] ola@mojmail.eu
[url=http://valhalla.org.pl]Hołmpejdż[/url] | [url=http://valhalla.org.pl/foto]Galerie[/url] | [url=http://valhalla.org.pl/tech]"Twórczość"[/url] || [url=http://img.munn.in]Free Image Hosting[/url]

Offline

 

#5  2014-03-21 16:21:49

  debbie - Użytkownik

debbie
Użytkownik
Zarejestrowany: 2006-09-19

Re: Mysql i tworzenie inserta

Dzieki przeserdeczne :)))


debbie
[color=blue]Wrócę jak zjem zupę i drugie danie - tyle[/color]
[color=blue]a oto ta zupa:[/color]

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)

[ Generated in 0.010 seconds, 9 queries executed ]

Informacje debugowania

Time (s) Query
0.00018 SET CHARSET latin2
0.00007 SET NAMES latin2
0.00192 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.147.6.118' WHERE u.id=1
0.00111 UPDATE punbb_online SET logged=1715945824 WHERE ident='3.147.6.118'
0.00022 SELECT * FROM punbb_online WHERE logged<1715945524
0.00060 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=25453 AND t.moved_to IS NULL
0.00039 SELECT search_for, replace_with FROM punbb_censoring
0.00239 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=25453 ORDER BY p.id LIMIT 0,25
0.00101 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=25453
Total query time: 0.00789 s