Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapis do pliku wyniku pętli
Forum PHP.pl > Forum > Przedszkole
motor
Witam mam taki problem
Skrypt wyświetal mi wynik tzn tytuły z bazy po przecinku i chciałbym to zapisać do pliku i nie wiem jak wynik całej pętli zapisać jako jedna zmienna
  1. <?php
  2.  
  3. // wynik z bazy tytuły po przecinku 
  4.  {
  5.  print "$a_row[title], "; 
  6.  
  7. }
  8. // Zapisd do pliku
  9. $katalog = "kat1";
  10. $nazwa = $katalog.'/'."tytuly.txt"; 
  11. if (!file_exists($nazwa)) {
  12. $plik = fopen($nazwa, "w");
  13.  
  14. $dane = "?questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif?"; 
  15.  
  16. fputs ($plik, $dane);
  17. fclose ($plik);
  18. }
  19. ?>
nospor
  1. <?php
  2.  
  3. $zm = '';
  4. // wynik z bazy tytuły po przecinku 
  5.  {
  6.  print "$a_row[title], ";
  7. $zm.=$a_row['title'].','; 
  8.                     
  9. }
  10. // Zapisd do pliku
  11. $katalog = "kat1";
  12.             $nazwa = $katalog.'/'."tytuly.txt"; 
  13. if (!file_exists($nazwa)) {
  14.             $plik = fopen($nazwa, "w");
  15.  
  16.             //$dane = $zm; 
  17.             //fputs ($plik, $dane);
  18. fputs ($plik, $zm);
  19.             fclose ($plik);
  20. }
  21.  
  22. ?>
wiec w czym byl problem? winksmiley.jpg

pozatym zawsze mozesz od razu w petli zapisywac do pliku
motor
W tym że do pliku zostaje zapisany tylko ostatni wynik , w tym wypadku tytuł który jest ostatni w wyniku

Wykorzystałem twój pomysł i jest ten sam problem
mike
Na pewno gdzieś nadpisujesz wyniki, stąd do pliku wędruje tylko ostatni rekord.
Pokaż może cały kod, bo w tym powyzej pętli żadnej nie ma :-)
motor
A wygląda to tak
  1. <?php
  2.  
  3. function makelisting($querystring, $link, $guidestring, $cur_page, $properties_per_page, $sort)
  4. {
  5. if ($sort == "") {$sort = "id DESC";}
  6. $querystring = $querystring." ORDER BY $sort";
  7. $result = mysql_query("$querystring;",$link);
  8. $num_rows = mysql_num_rows($result);
  9.  
  10. $page_num = $cur_page + 1;
  11. $properties_per_page = "98";
  12. $total_num_page = ceil($num_rows/$properties_per_page);
  13.  
  14.  
  15. include("includes/common.php");
  16.  
  17. print "<h3><Center>";
  18. if ($num_rows == "1") {Print "tylko 1 .<BR>";}
  19. else {Print "W bazie jest $num_rows <BR>";}
  20.  
  21.  
  22. print"<p><p>";
  23.  
  24. if ($total_num_page != 0)
  25. {
  26. Print "Strona $page_num z $total_num_page.";
  27. print "</center></h3><center>";
  28. $prevpage = $cur_page-1;
  29. $nextpage = $cur_page+1;
  30. }
  31.  
  32.  
  33. $properties_per_page = 98;
  34. $limit_str = "LIMIT ". $cur_page * $properties_per_page .",$properties_per_page";
  35. $query = "$querystring $limit_str";
  36.  
  37.  
  38. $result = mysql_query("$query;",$link);
  39.  
  40.  
  41.  
  42. $zm = '';
  43. while ($a_row =mysql_fetch_array ($result) )
  44.  
  45.  
  46. {
  47.  
  48. $a_row[title] = stripslashes ($a_row[title]);
  49.  
  50.  print "$a_row[title], ";
  51. $zm.=$a_row['title'].','; 
  52.  
  53. }
  54.  
  55.  
  56. $katalog = "tumail";
  57. $nazwa = $katalog.'/'."tytuly.txt"; 
  58. if (!file_exists($nazwa)) {
  59. $plik = fopen($nazwa, "w");
  60.  
  61. //$dane = $zm; 
  62. //fputs ($plik, $dane);
  63. fputs ($plik, $zm);
  64. fclose ($plik);
  65. }
  66.  
  67.  
  68.  
  69. if ($total_num_page > 1)
  70. {
  71. print "<center><P><FORM name=pagejump>";
  72. Print "<SELECT NAME=\"selectpage\" onChange=\"window.location.href=document.pagejump.selectpage.options[document.pagejump.sele
    ctpage.selectedIndex].value\"> "
    ;
  73. Print "<OPTION VALUE=\"./propview.php?$guidestring&cur_page\" SELECTED>Jump To Another Page ";
  74. for ($counter=0; $counter<=$total_num_page-1; $counter++)
  75. {
  76. $page_jump = $counter +1;
  77. print "<OPTION VALUE=\"./propview.php?$guidestring&cur_page=$counter&sort=$sort\">Page $page_jump ";
  78. }
  79. print "</SELECT>";
  80. Print "</FORM>";
  81. }
  82.  
  83. if ($total_num_page != 0)
  84. {
  85. print "<P>";
  86. $prevpage = $cur_page-1;
  87. $nextpage = $cur_page+1;
  88. if ($page_num != 1){print "<a href=\"./propview.php?$guidestring&cur_page=$prevpage&sort=$sort\">Previous Page</a>  ";}
  89. if ($page_num != $total_num_page){print " <a href=\"./propview.php?$guidestring&cur_page=$nextpage&sort=$sort\">Next Page</a>  ";}
  90. }
  91.  
  92. Print "</center>";
  93.  
  94. }
  95. ?>
revyag
Otwierasz w pętli plik do zapisu, za każdym razem jest on tworzony od nowa. Rób tak:
  1. <?php
  2. $plik = fopen($nazwa, "a");
  3. ?>


-----
edit.
sory, ale masz fatalnie sformatowany kod i niezauwazyłem jednego nawiasu smile.gif to co wyżej nieaktulane :
--------
edit2
  1. <?php
  2. $a_row[title] = stripslashes ($a_row[title]);
  3. ?>

title powinno być w uszach.
motor
Masz rację, teraz wszystko gra DANKE smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.