Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL]Dodawanie z txt do bazy
shtoc
post
Post #1





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

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


Mam takie pytanie!!
Jak dodaje rekordy do bazy z pliku txt to kazdy nowy wiersz pliku jest nowym rekordem.

Czy mozna zrobic tak zeby skrypt bral 1 wiersz i ustawial jako przyposcmy tytul w bazie i kolejne 10 wierszy i ustawail jako opis. zeby to bylo jednym rekordem. i pote lecial dalej 11 na tytul i kolejne 10 na opis!
czyli plik :
1
2
3
4
5
...
w bazie
id tytul opis
1 1 2 3 4 5...


kod jakim dodaje rekordy z pliku do bazy

  1. <?php
  2. $pdo = new PDO('mysql:host=localhost;dbname=test', 'admin', 'xxx');
  3. $pdo ->query("SET NAMES utf8");
  4. $plik = file("d:ksiazka2.txt");
  5.  
  6. foreach($plik as $tmp)
  7. {
  8. $sql = "INSERT INTO spam (`cont`) VALUES (:cont)";
  9. $statement = $pdo->prepare($sql);
  10. $statement->bindValue(':cont', $aaa, PDO::PARAM_STR);
  11. $statement->execute();
  12. }
  13. ?>


Ten post edytował shtoc 19.01.2009, 15:28:50
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
erix
post
Post #2





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




Robisz sobie pętlę pobierającą linię (fgets" title="Zobacz w manualu PHP" target="_manual) i w niej licznik zwiększający się co krok o jeden. Jeśli dziesięć - wszystkie poprzednio wczytane wpisy, to cały rekord i resetujesz licznik do zera.

Kod
licznik = 0;
while(pobierz){
   jesli
      licznik<10 to rekord .= wczytane dane
   w przeciwnym wypadku
      kasuj licznik
   zwieksz licznik
}
Go to the top of the page
+Quote Post

Posty w temacie


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: 27.12.2025 - 08:49