Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> [PHP] tablica - dodawanie rekordu do każdego, elementu tablicy
marian2299
post 27.07.2009, 15:26:25
Post #1





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


Mam taki kod:
  1. <?php
  2. $plik = file('plik.txt');
  3. echo '<pre>';
  4. print_r($plik);
  5. echo '</pre>';
  6. ?>


Jak do każdego elementu tablicy dodać jakikolwiek rekord np.:
  1. INSERT INTO kody (kod, uzyty) VALUES (TUTAJ TO Z TABLICY, nie)

?

Z góry dzięki
za pomoc.

Ten post edytował marian2299 27.07.2009, 15:30:44


--------------------
film edit student
Go to the top of the page
+Quote Post
skowron-line
post 27.07.2009, 15:30:03
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


http://pl2.php.net/manual/pl/function.array-map.php ale niewiem dokladnie o co tobie chodzi.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
marian2299
post 27.07.2009, 15:37:03
Post #3





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


  1. <?php
  2. $plik = file('plik.txt');
  3. echo '<pre>';
  4. print_r($plik);
  5. echo '</pre>';
  6. ?>

to mi da:
Cytat
Array
(
[0] => bu36a2

[1] => k7h6d5

[2] => 8hc8ra

[3] => hsr87p

[4] => c7bmh5

[5] => ppadu7

[6] => 5u6rmb

[7] => 424pwc

[8] => 4ph6ra

[9] => tet4hh

[10] => s3mkb3

[11] => 346ar5

[12] => bchhpt

[13] => t7nkh4

[14] => 6but86

[15] => fmnh4n

[16] => 4tswrd

[17] => 85ssd7

[18] => tec8ds

[19] => bn5a7a

[20] => uaehkh

[21] => h5w477

itd.. aż do 4999.

Chciałbym aby każdy z tych kodów dodać do mysql. Utworzyć rekord. Tak jak napisałem wyżej.


--------------------
film edit student
Go to the top of the page
+Quote Post
skowron-line
post 27.07.2009, 15:50:57
Post #4





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


  1. <?php
  2. foreach( $file as $data )
  3. {
  4. mysql_query( 'insert into table( a ) values( "'. $f .'" ) ');
  5. }
  6. ?>


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
marian2299
post 27.07.2009, 16:13:28
Post #5





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


Nie działa, ale to zapewne moja wina, ktoś podpowie:
  1. <?php
  2. $plik = file('plik.txt');
  3. foreach( $plik as $data )
  4. {
  5. mysql_query('insert into kodykody (kod, uzyty) values("'. $f .'", nie)');
  6. }
  7. ?>

Co napisałem źle ?


--------------------
film edit student
Go to the top of the page
+Quote Post
artur_dziocha
post 27.07.2009, 16:26:59
Post #6





Grupa: Zarejestrowani
Postów: 320
Pomógł: 53
Dołączył: 18.09.2007
Skąd: Radom

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


przyjrzy sie dokładnie kodowi.
skąd wzięła Ci sie zmienna $f??
Powinno być raczej $data

Ten post edytował artur_dziocha 27.07.2009, 16:27:39
Go to the top of the page
+Quote Post
marian2299
post 27.07.2009, 16:32:57
Post #7





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


Dałem, nic się nie zmieniło.


--------------------
film edit student
Go to the top of the page
+Quote Post
erix
post 27.07.2009, 17:22:49
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Co to jest nie w wartościach?


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
marian2299
post 27.07.2009, 17:27:41
Post #9





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


To jest czy kod jest użyty.
Użyty = nie.
Wiem, mogłem to zrobić prościej.


--------------------
film edit student
Go to the top of the page
+Quote Post
skowron-line
post 27.07.2009, 18:50:41
Post #10





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Cytat(marian2299 @ 27.07.2009, 15:13:28 ) *
Nie działa, ale to zapewne moja wina, ktoś podpowie:
  1. <?php
  2. $plik = file('plik.txt');
  3. foreach( $plik as $data )
  4. {
  5. mysql_query('insert into kodykody (kod, uzyty) values("'. $f .'", nie)');
  6. }
  7. ?>

Co napisałem źle ?

nie w twoim przypadku to string a stringi wrzuca sie w uszach do bazy wiec
Kod
"nie"


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
marian2299
post 28.07.2009, 11:38:00
Post #11





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


Jest prawie ok, ale dodaje tylko pierwszy rekord, czemu?
  1. <?php
  2. $plik = file('plik.txt');
  3.    
  4.     foreach($plik as $data)
  5.     {
  6. $zapytanie = "INSERT INTO `kodykody` (`kod`, `uzyty`) VALUES ('".$data."', 'nie')";
  7. $idzapytania = mysql_query($zapytanie);
  8.     }
  9. ?>


Może da się to zrobić pętlą while ?

Ten post edytował marian2299 28.07.2009, 00:43:22


--------------------
film edit student
Go to the top of the page
+Quote Post
MWL
post 28.07.2009, 11:53:13
Post #12





Grupa: Zarejestrowani
Postów: 492
Pomógł: 32
Dołączył: 14.04.2008
Skąd: Lenkowski.net

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


Chwila, co masz w tym pliku??


--------------------
Programujemy aplikacje internetowe. Szukasz pracy? Napisz do mnie!
Go to the top of the page
+Quote Post
marian2299
post 28.07.2009, 11:56:00
Post #13





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


Kody:

s3mkb3
346ar5
bchhpt
t7nkh4
6but86

4999 kodów.


--------------------
film edit student
Go to the top of the page
+Quote Post
Pilsener
post 28.07.2009, 12:01:54
Post #14





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


A nie możesz dodać od razu całego pliku do bazy za pomocą:
  1. LOAD DATA INFILE...
? Po co się tak męczyć i obciążać pamięć?
Go to the top of the page
+Quote Post
marian2299
post 28.07.2009, 12:10:24
Post #15





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


A pomożesz, jak to zrobić w tym konkretnym przypadku ? Każdy kod musi mieć "uzyty - nie" i kod...

Manual mysql jest po angielsku ;\.


--------------------
film edit student
Go to the top of the page
+Quote Post
erix
post 28.07.2009, 12:13:21
Post #16





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Da się: fgets" title="Zobacz w manualu PHP" target="_manual.

Choć nie rozumiem, jak dodaje pierwszy rekord - z prawidłową zawartością?


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
marian2299
post 28.07.2009, 12:15:24
Post #17





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


Tak, z prawidłową, ale tylko jeden, i to nie jest ten pierwszy z pliku, ale gdzieś ze środka.


--------------------
film edit student
Go to the top of the page
+Quote Post
erix
post 28.07.2009, 12:20:34
Post #18





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Ok, spytam tak: nie masz przypadkiem mieszanych znaków końca linii w pliku?


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
marian2299
post 28.07.2009, 13:05:07
Post #19





Grupa: Zarejestrowani
Postów: 272
Pomógł: 9
Dołączył: 6.06.2009

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


W tym pliku nie mam znaków końca linii.
Jest po prostu
zejście
w
dół.

Próbowałem tak:
  1. <?php
  2. $i = 1;
  3. $uchwyt = fopen ("plik.txt", "r");
  4. while (!feof ($uchwyt)) {
  5.    $data = fgets($uchwyt, 4096);
  6.    $zapytanie = "INSERT INTO `kodykody` (`kod`, `uzyty`) VALUES ('".$data[$i]."', 'nie')";
  7. $idzapytania = mysql_query($zapytanie);
  8. $i++;
  9. ?>

Ale nic ;\.


--------------------
film edit student
Go to the top of the page
+Quote Post
erix
post 28.07.2009, 13:06:42
Post #20





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
W tym pliku nie mam znaków końca linii.
Jest po prostu
zejście
w
dół.

Przecież to to samo. tongue.gif Znak końca linii może mieć postać \r\n albo samego \n. Podejrzewam, że jest pomieszane.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
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 Wersja Lo-Fi Aktualny czas: 5.06.2024 - 07:40