Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][sql] Jak utworzyć puste pliki w danym przedziale...
japek
post 28.11.2006, 20:54:27
Post #1





Grupa: Zarejestrowani
Postów: 97
Pomógł: 0
Dołączył: 9.03.2006
Skąd: Opole

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


Jeśli podczas zapytania SQL wybierzemy przedział czasowy (dla każdego dnia jest plik z danymi lecz niekiedy brakuje pliku w jakimś dniu) za pomocą Between, to potrzebuje aby dla daty, kiedy nie ma pliku, został utworzony pusty plik o jakiejs nazwie np. 'xxxxx_2006.11.28'. Może brakować więcej plików, zależnie od przedziału czasu. Jak sie do tego zabrać? mam już tablice zawierającą nazwy plików z wybranego okresu.
Go to the top of the page
+Quote Post
Skobi
post 28.11.2006, 21:16:34
Post #2





Grupa: Zarejestrowani
Postów: 174
Pomógł: 1
Dołączył: 19.02.2004

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


hmm, a dlaczego ten plik musi istniec, nie mozesz wprowadzic prostego sprawdzania pliku np.:

  1. <?php
  2. if ( file_exists($strPlik) )
  3. {
  4.  $resPlik = ""; // tu przypiszesz zawartosc pliku
  5. }
  6. else
  7. {
  8.  $resPlik = ""; // tu przypiszesz wartosc taka jakbys uzyskal z pustego pliku
  9. }
  10. ?>
Go to the top of the page
+Quote Post
japek
post 4.12.2006, 09:38:40
Post #3





Grupa: Zarejestrowani
Postów: 97
Pomógł: 0
Dołączył: 9.03.2006
Skąd: Opole

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


Zrobiłem tak, że mając tablicę z datami wybranymi przez formularz:

  1. <?php
  2. $tab_data=array();
  3. for ($y=$_POST['year1']; $y<=$_POST['year2']; $y++) {
  4. for ($m=$_POST['month1']; $m<=$_POST['month2']; $m++) {
  5. for ($d=$_POST['day1']; $d<=$_POST['day2']; $d++) {
  6. $data_form=$y.'.'.$m.'.'.$d;
  7. $tab_data[]=$data_form;
  8. $lt=count($tab_data);
  9. }
  10. }
  11. }
  12. ?>


tworzę listę nazw plików istniejących na serwerze, odpowiadających datom wybranym w formularzu.
Mam jakiś błąd tutaj. Chcę tworzyć pusty plik, jeśli $num[2] nie odpowiada elementowi tablicy $tab_data, jeśli tak to

  1. <?php
  2. $query="SELECT file_name, file_type, data FROM dane WHERE data BETWEEN '".$_POST['year1'].".".$_POST['month1'].".".$_POST['day1']."' AND '".$_POST['year2'].".".$_POST['month2'].".".$_POST['day2']."' ORDER BY data";
  3. $result=@mysql_query($query);
  4.  
  5. $tab_plikow=array();
  6. while($num=@mysql_fetch_array($result)) {
  7. for ($dat=0; $dat<=$lt; $dat++) {
  8. if ($num[2]=$tab_data[$dat]) {
  9. $nazwapliku=("".$num[0]."_".$tab_data[$dat].".".$num[1]."");
  10. //$tab_plikow[]=$nazwapliku;
  11. }
  12. else {
  13. $nazwapliku = fopen("pusty_".$tab_data[$dat].".".$num[1]."", "w");
  14. //$tab_plikow=$nazwapliku;
  15. }
  16. }
  17. $tab_plikow=$nazwapliku;
  18. }
  19. ?>


Wie ktoś jak to zrobić? gdzie błąd?
Go to the top of the page
+Quote Post

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: 18.07.2025 - 11:04