Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Forum W XML
Forum PHP.pl > Forum > XML, AJAX > XML
Turgon
No właśnie ? Sam nie wiem...
Jaka jest wasza opinia, bo mam zamiar wziąść się za napisanie skryptu pod to...
NuLL
Nasuwa sie pytanie - po co ?
Turgon
Bo tak mi się podoba tongue.gif . To nie kolejny oklepany projekt... I po za tym wtedy koniec z bazami SQL...
NuLL
Wg mnie pomysl marny. Pod php 4 to tragiczna pomylka
Pod php 5 mozna sprobowac tylko nie wiem po co - edycja postow usuwanie - mnostwo roboty. Pozatym przy wiekszym obciazeniu serwer dostanie po opornikach biggrin.gif bo dopisywanie jest wolne, podobnie jak edycja. Jedyne co jest szybko przeprowadzane to odczyt.

BTW. Zycze powodzenia z implementacja wyszukiwarki.
bela
Poszukaj projektów dotyczących baz XML-owych. Takie coś ludzie robili, ale to trochę bezcelowe ;]
Turgon
Wszyscy mówicie bez sensu, ale to ma być po prostu dobre do użytku...
Tylko podajcie przykładową bazę w XML, bo ja sie z żadną nie spotkałem...
bela
google: native xml database
Turgon
Dziękuje Bela... Może chyba dla praktyki takiego rpostego CMSa o tym napiszę... Ciekawa będzie rzecz...
php programmer
Ja myślę, że XML użyć do takich rzeczy jak np.
drzewo kategorii, ponieważ kategorie stosunkowo rzadko się zmienia,
i zawsze można na żywca wejść do pliku i coś zmienić.

Czyli puenta jest taka, że XML się nadaje bardziej po stronie administratora
i do przechowywania niewielikch ilośći informacji.

PS. Apropos forum, to zrobiłem już takie małe proste formu oparte na pliku
ale jest tylko dodawanie i czytanie postów, a także możliwość odpowiedzi
(a jak chce usunąć to kasuje linijkę z tym postem bezpośrednio w pliku)
zobaczcie na
www.karwiny.abc.pl
(acha tylko ze w FF nie dziala dodawanie komentarzy, ale ze statystyk
wiem ze FF to tylko 5% wiec nie chciało mi się nawet robić poprawki dla FF)
to jest właśnie forum oparte na zwykłym pliku CSV.

Najważniejsze fragmenty kodu podaje niżej (jak by kogoś to interesowało)
Teoretycznie nie jest to najwydajniejszy kod jeśli chodzi o szybkość
a jednak działa i to na serwerze w stanach (bo tańszy hosting),
czyli przy kożdej komunikacji z serwerem dane sobie idą na drugą półkulę smile.gif


plik CSV:
Kod
tożsamo?ć  | ojciec | temat | autor | tre?ć | host
1132077753 | 0 | siemka, nowy portal? | nowy | co¶ nowego :))))) questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif |
1132076753 | 0 | Karwiny 100% VIKING | Viking Kager Gdynia | Karwiny z Vikingiem Gdynia!!! |
1132439866 | 1132089753 | poprawiona data | admin | został naprawiony bł±d, dotycz±cy zapamiętywania godziny | localhost |
1132439928 | 0 | aktualno¶ci | admin | W tym temacie będ± informacjeo postępach w pracy nad portalem | localhost |
1132440011 | 1132439928 | naprawiony bł&plusmn;d godziny | admin | Został już naprawiony bł&plusmn;d dotycz&plusmn;cy godziny nadania tematów.<br>Godzina była kilka godzin wcze&para;niejsza niż powinna być. | localhost |
1133221573 | 0 | dupa maryny | daniel | to jest jaka&para; dupa tej maryny | chello083144095096.chello.pl |
1133221603 | 1133221573 | odp | daniel |  | chello083144095096.chello.pl |
1133221636 | 1133221573 | ljkhsdfjha | ljkhjsdhf | lkjdflkjs flksjfl ksajdflksdj<br><br>sdfnhsldkf lksdj flkjl <br>lkj4klj lk45345345<br>34534<br>5<br>4353453<br><br>4353ja@yahoo.com | chello083144095096.chello.pl |
1133411655 | 0 | hej wszystkim | wie&para;niara |  | ajc47.neoplus.adsl.tpnet.pl |
1133482605 | 0 | co To za Shit??exclamation.gif! | Twoj Stary |  | karwiny.multicon.pl |
1133482738 | 1133482605 | haha | slawek | buuchacha | aje82.neoplus.adsl.tpnet.pl |
1133482909 | 0 | ktore karwiny i dlaczego akurat 3 sa najfajniejsze? | zioM |  | karwiny.multicon.pl |
1133482972 | 1133482909 | jak to które | slawek | no chyba wszystkie | aje82.neoplus.adsl.tpnet.pl |
1133752050 | 0 | co jest dzidy | bejbe |  | ava194.internetdsl.tpnet.pl |


select.php
  1. <table width="800" align="center" border="0" cellpadding="3" cellspacing="3">
  2. <tr><td colspan="4" align="right">
  3. <input type="button" value="Odpowiedz" onClick="ShowAddBox(<?=$_GET['id']?>)" class="button">
  4. <input type="button" value="Powrót"    onClick="history.back()" class="button">
  5. </td></tr>
  6.  
  7. <tr class="top">
  8. <td width="90"  align="center">Data</td>
  9. <td width="60"  align="center">Godz</td>
  10. <td width="400" style="padding-left:7px">Temat</td>
  11. <td width="250" style="padding-left:7px">Nadawca</td>
  12. </tr>
  13. <?
  14. $forum = file('forum/forum.txt');
  15. $last  = count($forum)-1;
  16.  
  17. // pytanie - temat główny
  18. for ($i=$last;$i>0;$i--){
  19.      $wiersz = explode('|',$forum[$i]);
  20.      if (trim($wiersz[0])!=$_GET['id']) continue;
  21.      echo '<tr bgcolor="#dddddd">';
  22.      echo '<td align="center">';
  23.      echo Date("Y-m-d",$wiersz[0]);
  24.      echo '</td><td align="center">';
  25.      echo Date("H:i",$wiersz[0]);
  26.      echo '</td><td style="padding-left:7px">';
  27.      echo $wiersz[2];
  28.      echo '</td><td style="padding-left:7px">';
  29.      echo $wiersz[3];
  30.      echo '</td></tr>';
  31.      echo '<tr bgcolor="#eeeeee"><td colspan="4" style="padding:12px">';
  32.      echo $wiersz[4];
  33.      echo '</td></tr>';
  34.      }
  35.  
  36. // odpowiedzi - synowie tematu głównego
  37. for ($i=1;$i<=$last;$i++){
  38.      $wiersz = explode('|',$forum[$i]);
  39.      if (trim($wiersz[1])!=$_GET['id']) continue;
  40.      echo '<tr><td><br></td></tr>';
  41.      echo '<tr bgcolor="#dddddd">';
  42.      echo '<td align="center">';
  43.      echo Date("Y-m-d",$wiersz[0]);
  44.      echo '</td><td align="center">';
  45.      echo Date("H:i",$wiersz[0]);
  46.      echo '</td><td style="padding-left:7px">';
  47.      echo $wiersz[2];
  48.      echo '</td><td style="padding-left:7px">';
  49.      echo $wiersz[3];
  50.      echo '</td></tr>';
  51.      echo '<tr bgcolor="#eeeeee"><td colspan="4" style="padding:12px">';
  52.      echo $wiersz[4];
  53.      echo '</td></tr>';
  54.      }
  55.  
  56.  
  57. ?>
  58. </table>
  59. </body></html>


insert.php
  1. <?
  2. $br       =  chr(13).chr(10);
  3. $id       =  time()+3600*6+600;
  4. $ojciec   =  $_POST['id'];
  5. $temat    =  trim($_POST['temat']);
  6. $nadawca  =  trim($_POST['nadawca']);
  7. $tresc    =  str_replace($br,'<br>',trim($_POST['tresc']));
  8. $nazwa    =  'forum.txt';
  9.  
  10. $ip       =  $_SERVER['REMOTE_ADDR'];
  11. $host     =  gethostbyaddr($_SERVER['REMOTE_ADDR']);
  12. $agent    =  $HTTP_USER_AGENT;
  13. $sender   =  $HTTP_REFERER;
  14.  
  15. $wiersz[] =  $id;
  16. $wiersz[] =  $ojciec;
  17. $wiersz[] =  $temat;
  18. $wiersz[] =  $nadawca;
  19. $wiersz[] =  $tresc;
  20. $wiersz[] =  $host;
  21. $wiersz[] =  $br;
  22. $wiersz   =  implode(' | ',$wiersz);
  23.  
  24. $plik = fopen($nazwa,'a');
  25. fputs($plik,$wiersz);
  26. fclose($plik);
  27.  
  28. if ($ojciec==0) header('location: ../'); else
  29.                 header('location: ../index.php?subpage=forum_select&id='.$ojciec);
  30.  
  31. ?>
Turgon
Dziękuje, ale ja trochę inaczej, do tego podchodzę... winksmiley.jpg Chce specyfikację XML wykorzystać jako loader plików tekstowych. SZYBKI przedewszystkim.
sf
nie podales zadnego sensowanego argumentu jaki by przemawial za tym by takie cos zrobic, powod, ze nie korzysta sie z bazy danych.. jesu, kto dzis programuje bez baz danych? juz nie mowiac, ze od php5 jest standardowo dolaczone sqlite

SZYBKI questionmark.gifquestionmark.gifquestionmark.gif? pokaz wyniki testow, ktore przeprowadziles, ze tak twierdzisz
mike
XML przy takim zastosowaniu moż być tylko ... bardzo wolny.

Paranoją jest stosowanie go jako narzędzia do przechowywania danych, nie do tego został stworzony.
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.