Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z zapisaniem danych z bazy do pliku
explode
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 25.08.2006

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


Witam mały problem chciałbym zapisac w pliku wszystkie dane jakie posiadam w mojej bazie,niestety gdy wywołuje ję pętla w zmiennej ,pętla zamiast sie wykonac zapisuje sie dpliku w niezmienionej postaci.Jak to rozwiązać oto kod
  1. <?php
  2.  
  3. mysql_connect('IP','p','bd') or die();
  4.  
  5. mysql_select_db("udn1") or die("nie mozna sie polaczyc z z ta baza");
  6. $wynik=mysql_query("SELECT*FROM baza ;") or die("blad w zapytaniu");
  7.  
  8. $rekord = mysql_fetch_assoc($wynik);
  9.  
  10.  
  11. $data=$rekord['last_modified'];
  12. $tresc=$rekord['content'];
  13. $opis=$rekord['description'];
  14.  
  15. //zmienna xml zapisywana do pliku
  16. $xml='
  17. <?xml version="1.0" encoding="UTF-8" standalone="yes"?>'."nr".
  18. "<all>"."nr" 
  19. ."<aktualnosci>"."nr"
  20. ."<newsy>"."nr"
  21. ."while ($rekord = mysql_fetch_assoc($wynik)){
  22. <news> "."nr"
  23. ."<data>"."nr" 
  24.  ."<b>"."$data"."</b>"."nr"
  25.  ."</data>"."nr"
  26. .'<tresc>'.$tresc.'</tresc>'."nr"
  27. .'</news>'."nr"
  28. ."}" ."nr"
  29. .'</newsy>'."nr"
  30.  .'</aktualnosci>'."nr";
  31.  
  32. ;
  33.  
  34.  
  35.  
  36.  
  37. //zapisywanie do pliku
  38.  
  39. $plik=@fopen("adane.xml","w+");
  40. if(!plik){
  41. echo 'cos nie tak';
  42. }
  43. else{
  44. fwrite($plik,"$xml");
  45. fclose($plik);
  46. echo "dane $xml zostały zapisane do pliku";
  47. }
  48. ?>

Pozatym czy można przekazac za pomocą header do tego pliku coś takiego
  1. <?php
  2. header("Content-type: text/xml; charset=UTF-8");
  3. ?>

Aby przeglądarka poprawenie interpretowała ten plik.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Cysiaczek
post
Post #2





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




  1. <?php
  2. while ($rekord = mysql_fetch_assoc($wynik)){
  3.  
  4. //tutaj reszta, ale pamietaj, że wykona się dla każedo rekordu z osobna
  5.  
  6. }
  7. ?>


Pozdrawiam.
Go to the top of the page
+Quote Post
explode
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 25.08.2006

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


Chyba nie do końca rozumie,mam wstawic phpa w phpie? czy zakończyc w pewnym momencie zapisywanie tak ?> i potem znowu otworzyc znacznik phpa? ja będe w niektorych momentach chciał tylko pobierać dane z bazy
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #4





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Cytat
."while ($rekord = mysql_fetch_assoc($wynik)){
<news> "."\n\r"
."<data>"."\n\r"
."<b>"."$data"."</b>"."\n\r"
."</data>"."\n\r"
.'<tresc>'.$tresc.'</tresc>'."\n\r"
.'</news>'."n\r"
."}" ."\n\r"
.'</newsy>'."n\r"
.'</aktualnosci>'."n\r";

;

Weź to wywal i napisz raz jeszcze, bo jak doczytałem, to mało ataku serca nie dostałem (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) P

  1. <?php
  2. while($rekord = mysql_fetch_assoc($wynik)){
  3. $xml.='<news><data>'.$rekord['data'].'</data></news>'; //o . masz wzór - wypełnij sam
  4. }
  5. ?>


Zdrówka
Go to the top of the page
+Quote Post
explode
post
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 25.08.2006

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


Słuchaj dalej się nie rozumiemy ja nie chcę wszystkiego ściagąć z bazy danych jak by to zrobił tak jak Ty to bym dostał coś takiego
  1. <?php
  2. <news><data>'.$rekord['data'].'</data></news>
  3. <news><data>'.$rekord['data'].'</data></news>
  4. <news><data>'.$rekord['data'].'</data></news>
  5. <news><data>'.$rekord['data'].'</data></news>
  6. ?>
i.t.d zmienna xml nie moze być w pętli, tylko to zmienna ma być w pętli inne formatowanie tu nie nie da.To co napisałeś to tylko poprawki kosmetyczne
Ja chce dostać np.
  1. <all>
  2.  <dane>ziema</dane>
  3.  <dane>mars</dane>
  4.  <dane>jowisz</kowisz>
  5. </all>

więc nie mogę dać pętli przed all bo bym dostał <all><dane><ziema></dane></all>
Rozumiesz?
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #6





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Przecież ująłem pojedyńczą daną w pętli. Tam jest operator .=
Masz zatem postać PREFIX-CIAŁO-POSTFIX -tylko CIAŁO jest wykonywane w pętli. Reszta nie.
Inaczej: np
  1. <?php
  2. $xml='<all><aktualnosci><newsy>';
  3. $xml.=$dane_z_petli;
  4. $xml.='</all></aktualnosci></newsy>'
  5. ?>


Prościej chyba nie można, ale może się mylę...

Pozdrawiam.

Ten post edytował Cysiaczek 25.08.2006, 17:51:14
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: 25.08.2025 - 01:38