Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]formularz php
fitdancer
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.12.2007

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


Mam mały klopot w stworzeniu skrypty który działa następująco...

mam formularz w htmlu z lista rozwijalną z opcjami waluty jaka mnie interesuje...
teraz jak wcisne przycisk tam np o nazwie wynik, to skrypt php ma mi zapisać wynik aktualnej wartości wybranej waluty w pliku tekstowym...

formularz tak zrobiłem, razem z częscia php która zapisywac powinna do pliku cokolwiek:
  1. <html>
  2. <head>
  3. <title>Waluty</title>
  4. </head>
  5. <body>
  6. <form action="index.php3" method=post>
  7.  <h1>Która waluta Cie interesuje?</h1>
  8. <select name="waluta">
  9. <option name="euro">EUR - euro</option>
  10. <option name="dolar">USD - dolar amerykański</option>
  11. <option name="frank">CHF - frank szwajcarski</option>
  12. <option name="rubel">RUB - rubel rosyjski</option>
  13. </select>
  14. <input type="submit" value="wynik" />
  15.  
  16. </form>
  17.  
  18. <?
  19.  $f=fopen("wynik.txt", "a");
  20. if ($f) {
  21. fputs($f,"$_POST[euro],$_POST[dolar],$_POST[frank],$_POST[rubel]\n");
  22. fclose($f);
  23. echo "Dane zostały zapisane :)";
  24. } 
  25.  
  26. ?>
  27. </body>
  28. </html>


co dopisać zeby działało??
Powód edycji: dodalem tag i bbcode (cysiaczek)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 15)
Grzyw
post
Post #2





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


Sprawa jest prosta - w tym skrypcie wartość opcji z formularza przechowywana jest w zmiennej $_POST['waluta'] . I w zależności od wyboru, może zawierać w sobie wartość 'euro', 'frank' itd.

Ten post edytował Grzyw 25.12.2007, 19:12:38


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
fitdancer
post
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.12.2007

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


<?
$f=fopen("wynik.txt", "a");
if ($f) {
fputs($f,"$_POST['waluta']\n");
fclose($f);
echo "Dane zostały zapisane ";
}


o to Ci chodzi?questionmark.gif
Go to the top of the page
+Quote Post
Grzyw
post
Post #4





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


Tak, to powinno Ci zadziałać.

Możesz wyciąć tymczasowo (choćby poprzez komentarz) część odpowiadającą za zapis do pliku i wywalić na ekran:
  1. <?php
  2. echo $_POST['waluta'];
  3. ?>


To pozwoli Ci "zdebugować", czy błąd leży w zapisie pliku.

Ten post edytował Grzyw 25.12.2007, 19:18:50


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
fitdancer
post
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.12.2007

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


tylko, że mi nie działa... a wynik mam taki

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in index.php3 on line 19
Go to the top of the page
+Quote Post
Grzyw
post
Post #6





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


A zmień:
  1. <?php
  2. fputs($f,"$_POST['waluta']\n");
  3. ?>

na:
  1. <?php
  2. fputs($f,$_POST['waluta']."\n");
  3. ?>


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
fitdancer
post
Post #7





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.12.2007

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


Wszystko mi sie juz miesza, mógł bys mi mniejwiecej rozpisac jak powinien wygalac działajacy kod ze wszystkim co jest w poleceniue??

czyli formularz z opcjalmi waluty i zapisem aktualnego kursu do pliku tekstowego...
Go to the top of the page
+Quote Post
Grzyw
post
Post #8





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


Jasne.

Plik HTML:
  1. <title>Waluty</title>
  2. </head>
  3. <form action="index.php" method=post>
  4. <h1>Która waluta Cie interesuje?</h1>
  5. <select name="waluta">
  6. <option name="euro">EUR - euro</option>
  7. <option name="dolar">USD - dolar amerykański</option>
  8. <option name="frank">CHF - frank szwajcarski</option>
  9. <option name="rubel">RUB - rubel rosyjski</option>
  10. <input type="submit" value="wynik" />
  11.  
  12. </form>
  13. </body>
  14. </html>


Plik index.php:
  1. <?
  2. echo $_POST['waluta'];
  3. $f=fopen("wynik.txt", "a");
  4. if ($f) {
  5. fputs($f,$_POST['waluta']."\n");
  6. fclose($f);
  7. echo "Dane zostały zapisane ";
  8. }
  9. ?>


Taki skrypt powinien wywalić Ci na ekran wartość wybraną i zapisać ją do pliku. Daj znać, czy wywaliło na ekran wartość i czy zapisało do pliku.

Ten post edytował Grzyw 25.12.2007, 19:43:16


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
fitdancer
post
Post #9





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.12.2007

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


wynik pokazuje sie na ekranie i zapisuje do pliku.. tylko teraz jescze jak wyciagnac ze stornki jakiejs kakrente info dotyczące tej waluty??

<?
$plik=fopen("http://kursy-walut.mybank.pl/","r");

... ?>

Ten post edytował fitdancer 25.12.2007, 19:57:31
Go to the top of the page
+Quote Post
Grzyw
post
Post #10





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


Po pierwsze - wyciągnij dane używając funkcji file_get_contents()
Później wyciągnij dane za pomocą wyrażeń regularnych.


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #11





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




Przenoszę na Przedszkole, a autora proszę, na przyszość o używanie bbcode.

Pozdrawiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
fitdancer
post
Post #12





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.12.2007

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


aż tak jescze nie jestem zaprzyjaxniony z php, żeby moć regularne stosować...
także ogromna prośba , jeżlei mogł bys mi to dopisać i potem powiedziec w gdzie to wstawic smile.gif

pomożta ludziska prosze!!! smile.gif
Go to the top of the page
+Quote Post
Grzyw
post
Post #13





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


Oj, Fitdancer, wybacz, ale odwalenie całej roboty mijałoby się z celem - musisz się tego nauczyć!:)
Mogę Ci podpowiadać w międzyczasie. Zapisz sobie tę funkcją file_get_contents() zawartość strony internetowej do jakiejś zmiennej.
W tej zmiennej będziesz miał treść czystego HTML'a. Poczytaj o wyrażeniach regularnych, to bardzo przydatne narzędzie, generalnie uniwersalne we wszystkich językach programowania. Wykorzystać je będziesz mógł też w JS.
Poczytaj:
http://www.programuj.com/artykuly/www/regularne.php
http://maciek.lasyk.info/regexp_checker.html
http://sokrates.mimuw.edu.pl/~sebek/regexp.html

Po stronie PHP funkcje do obsługi wyrażeń regularnych: preg_match() i ereg(). Z tej pierwszej skorzystasz w tym przypadku.

Powodzenia, jak coś, to pytaj.


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
fitdancer
post
Post #14





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.12.2007

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


narazie zdołałem wrzucic cała zawartośc strony..

Kod
<?
$f = file_get_contents('http://www.money.pl/pieniadze/nbp/srednie/');
preg_match("([A-Z])", $f, $matches);
echo($f);    

?>
Go to the top of the page
+Quote Post
Grzyw
post
Post #15





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


OK, teraz $f zawiera cały HTML. Teraz poczytaj o regularnych, o wzorcach, jak to wyciągnąć.
Przeglądnij wątek, w której otrzymałem kiedyś pomoc:
http://forum.php.pl/index.php?showtopic=78...mp;#entry400869


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
fitdancer
post
Post #16





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.12.2007

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


nie kminie tych regularnych ;/ nie wiem jak to dalej zrobić, a potem wszystko złączyć do kupy trzeba sad.gif
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 Aktualny czas: 19.08.2025 - 15:47