Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zle dzialajacy INSERT
Robertson
post 14.06.2006, 11:26:46
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 24.09.2004

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


Witam
Chce dodac wartosci z pliku csv do tabeli i wszystko jest wporzadku dopuki
robie to w standardowy sposob (INSERT INTO wsad_csv(`pole1`, `pole2`...) VALUES('".$data[0]."', '".$data[1]."'...), ale tych pol do dodania jest 61, wiec chcialem troche uproscic ten kod, ale niestety w ten sposob do tabeli wedruja glupoty ;-(.
Gdzie zrobilem blad?
  1. <?php
  2. $row = 1;
  3. $uchwyt = fopen ("c:wsad2.csv","r");
  4.  
  5. while ($data = fgetcsv ($uchwyt, 1000, ",")) {
  6.  echo $liczba_pol = count($data);
  7.  
  8. $i=0;
  9. $a=1;  
  10.  while($i < $liczba_pol){
  11.  
  12. $pole = "pole".$a++;
  13. $dat = $data[$i++];
  14. echo $dat."| do pola --> |".$pole;
  15.  
  16. $query = "INSERT INTO wsad_csv ($pole) VALUES ($dat)";
  17. $result = mysql_query ($query);
  18. }
  19. echo "<br />n";
  20.  
  21.  $row++;
  22. }
  23. fclose ($uchwyt);
  24. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bigZbig
post 14.06.2006, 12:21:49
Post #2





Grupa: Zarejestrowani
Postów: 740
Pomógł: 15
Dołączył: 23.08.2004
Skąd: Poznań

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


Poprawilem
  1. <?
  2. // odczytaj plik cvs tak aby przyjal postac tablicy jednowymiaro
  3. $data = array('wartosc pola 1', 'wartosc pola 2');
  4. foreach($data as $key => $value) {
  5. $newData['pole'.++$key] = $value; 
  6. }
  7. $sql = 'INSERT INTO wsad_csv ('.implode(',',array_keys($newData)).') 
  8.  VALUES ( ''.implode('', '', $newData).'')';
  9. ?>

-- edit --
A tak na marginesie podejrzewam, ze Twoj problem zwiazany byl z tym ze nie otaczales $dat cudzyslowami

Ten post edytował bigZbig 14.06.2006, 12:24:36


--------------------
bigZbig (Zbigniew Heintze) | blog.heintze.pl
Go to the top of the page
+Quote Post

Posty w temacie


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: 29.06.2025 - 18:25