Wymyśliłem sobie rotator buttonów, tzn ktoś wysyła SMS i jego button(link) idzie do pliku tekstowego, razem z tekstem z ALT i linkiem do strony.


Chciałbym żeby wywołanie wyglądało jakoś tak:
  1. <?php
  2.  
  3. echo '<marquee direction="down"><a href="$_POST['link']" target="blank"><img src="buttony/'.$_FILES['plik']['name'].'" alt="$_POST['nazwa']" /></a></marquee>'; ?>


Wymyśliłem, że w tym wypadku najlepsza będzie tablica (tak?), więc pomyślałem o explode, ale najpierw muszę zapisać swój "ciąg", znalazłem to:
  1. <?php
  2.  
  3. // zmienna $dane, która będzie zapisana
  4. // może także pochodzić z formularza np. $dane = $_POST['dane'];
  5. $dane = "tekst do wprowadzenia\n";
  6.  
  7. // przypisanie zmniennej $file nazwy pliku
  8. $file = "baza.txt";
  9.  
  10. // uchwyt pliku, otwarcie do dopisania na początku pliku
  11. $fp = fopen($file, "x");
  12.  
  13. // blokada pliku do zapisu
  14. flock($fp, 2);
  15.  
  16. // zapisanie danych do pliku
  17. fwrite($fp, $dane);
  18.  
  19. // odblokowanie pliku
  20. flock($fp, 3);
  21.  
  22. // zamknięcie pliku
  23. fclose($fp);
  24. ?>

Jak już uda mi się zapisać te dane do pliku, to następne dane będą dopisywane (tak?), ale jak potem odczytać za pomocą explode ten ciąg, skoro tablica będzie miała nieskończenie wiele danych ? Zapewne pętla. Więc powinna wyglądać ta pętla. Powiedzmy że określę sobie zmienne w taki sposób:
  1. <?php
  2.  
  3. echo '<marquee direction="down"><a href="$link" target="blank"><img src="$obrazek" alt="$nazwa" /></a></marquee>'; ?>


?

Z góry dzięki za pomoc smile.gif.

To wystarczyło winksmiley.jpg:
  1. <?php
  2. $naszaTresc = '<a href="'.$_POST['link'].'" target="blank"><img src="buttony/'.$_FILES['plik']['name'].'" alt="'.$_POST['nazwa'].'" /></a><br /><br />';
  3. $uchwyt = fopen('buttony_dane.txt', 'a');
  4. fwrite($uchwyt, $naszaTresc);
  5. fclose($uchwyt);
  6.  
  7.  
  8. echo '<a href="buttony/'.$_FILES['plik']['name'].'" target="blank">link</a><br /><br />
  9. <marquee behavior="scroll" align="center" valign="bottom" direction="up" width="170" height="184" scrollamount="1" scrolldelay="1" onmouseover="this.stop()" onmouseout="this.start()"> '; include('buttony_dane.txt'); echo'</marquee>';
  10. ?>