Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wykorzystanie elementow html "form i input" w php
Forum PHP.pl > Forum > Przedszkole
wierus
Mam takie pytanie, czy prawidlowe jest takie uzycie form i input? Czy tez nalezy
  1. <?include('tlo_admin.inc'); 
  2.  
  3. echo&#092;"<TABLE BGCOLOR='#90C0F0' align='center' width='80%' cellspacing='1' >\"; //tworzymy tabele bedaca 'ramka' w ktorej beda pola z danymi do pobrania
  4.  
  5. echo &#092;"<tr><td><font size='+3'><center>Dodanie nowego państwa do bazy danych</center></font>nn</td></tr>\";
  6.  
  7. echo &#092;"<form name='wpisywanie' enctype='text/plain' action='wpisywanie.php' method='post'>\"; //forma w ktorej beda poszczegolne pola input
  8.  
  9. echo&#092;"<TABLE BGCOLOR='#90C0F0' align='center' width='80%' cellspacing='2' cellpadding='16' >\";//stworzenie dwoch kolumn, w pierwszej nazwa pola, w drugiej pole do wpisania wart
  10. sci
  11.  
  12. echo&#092;"<TR><TD><B>Nazwa panstwa:</B></TD><TD><input name='Panstwo' ></TD</TR>\";
  13. ?>


Pytam poniewaz mam problemy z przekazaniem tych danych do innego pliku. Gdy uzywalem tylko jednego pola input
[/HTML]<form name="Wyszukaj" enctype="text/plain" action="wyszukaj.php" method="get">
<input name="nazwa_panstwa" ><input type="submit" name="szukaj" value="wyślij">
</form>[HTML]
jako zwykly kod html to pozniej spokojnie moglem odwolac sie do zmiennych w innych plikach. Jednak w tym pierwszym przypadku w pliku
  1. <?include('tlo_admin.inc'); 
  2.  
  3. echo $_post['Panstwo'];
  4. echo $Panstwo;
  5.  
  6. ?>

Zmienna panstwo jest pusta..... Nie wiem co jest nie tak...prawdopodobnie cos mieszam, ale mam problem z poradzeniem sobie z tym.
nospor
Do tego inputa można sie dobrać np.:
$Panstwo=$_POST['Panstwo'];
echo $Panstwo;
wierus
Te linijki, ktore zaproponowales oczywiscie nie rozwiazuja sprawy....
to co ja podalem, dwa echa dziala w przypadku gdy jest tylko jeden input.... i jest jako html, a nie jako php....
wrzuce caly prorgam, bo moze gdzies indziej jest blad

nowy.php
  1. <?include('tlo_admin.inc'); 
  2.  
  3. echo&#092;"<TABLE BGCOLOR='#90C0F0' align='center' width='80%' cellspacing='1' >\"; //tworzymy tabele bedaca 'ramka' w ktorej beda pola z danymi do pobrania
  4. echo &#092;"<tr><td><font size='+3'><center>Dodanie nowego panstwa do bazy danych</center></font>nn</td></tr>\";
  5. echo &#092;"<form name='wpisywanie' enctype='text/plain' action='wpisywanie.php' method='get'>\";
  6. echo&#092;"<TABLE BGCOLOR='#90C0F0' align='center' width='80%' cellspacing='2' cellpadding='1' >\";
  7. echo&#092;"<TR><TD><B>Nazwa panstwa:</B></TD><TD><input  name='Panstwo' ></TD</TR>\";
  8. echo&#092;"<TR><TD><B>Liczba ludnosci:</B></TD><TD><input  name='Ludnosc' ></TD</TR>\";
  9. echo&#092;"<TR><TD><B>Przyrost naturalny:</B></TD><TD><input  name='Przyrost_naturalny' ></TD</TR>\";
  10. echo&#092;"<TR><TD><B>Struktura wiekowa:</B></TD><TD><input  name='Struktura_wiekowa' ></TD</TR>\";
  11. echo&#092;"<TR><TD><B>Podzial etniczny:</B></TD><TD><input  name='Podzial_etniczny' ></TD</TR>\";
  12. echo&#092;"<TR><TD><B>Religie:</B></TD><TD><input  name='Religie' ></TD</TR>\";
  13. echo&#092;"<TR><TD><B>Analfabetyzm:</B></TD><TD><input  name='Analfabetyzm' ></TD</TR>\";
  14. echo&#092;"<TR><TD><B>Bezrobocie:</B></TD><TD><input  name='Bezrobocie' ></TD</TR>\";
  15. echo&#092;"<TR><TD><B>Wartosc eksportu:</B></TD><TD><input  name='Eksport_wartosc' ></TD</TR>\";
  16. echo&#092;"<TR><TD><B>Produkty eksportowe:</B></TD><TD><input  name='Eksport_produkty' ></TD</TR>\";
  17. echo&#092;"<TR><TD><B>Wartosc importu:</B></TD><TD><input  name='Import_wartosc'></TD</TR>\";
  18. echo&#092;"<TR><TD><B>Produkty importowane:</B></TD><TD><input  name='Import_produkty' ></TD</TR>\";
  19. echo&#092;"<TR><TD><B>Udzial sektorów w PKB:</B></TD><TD><input  name='Udzial_sek_w_pkb' ></TD</TR>\";
  20. echo&#092;"<TR><TD><B>Bezpieczenstwo energetyczne:</B></TD><TD><input  name='Bezpieczenstwo_energetyczne'></TD</TR>\";
  21. echo&#092;"<TR><TD><B>Gospodarka energetyczna:</B></TD><TD><input  name='Gospodarka_energetyczna' ></TD</TR>\";
  22. echo&#092;"<TR><TD><B>Dlug narodowy:</B></TD><TD><input  name='Dlug_narodowy' ></TD</TR>\";
  23. echo &#092;"<tr><td><center><input type='submit' name='dodaj' value='Dodaj'></center></td></tr>\";
  24. echo &#092;"</form>\";?>
  25.  
  26. </body>
  27. </html>


i drugi plik
"wpisywanie.php"
  1. <?include('tlo_admin.inc'); 
  2. $Panstwo=$_POST['Panstwo'];
  3. echo $Panstwo;
  4. echo $_post['Przyrost_naturalny'];
  5. echo $_post['Struktura_wiekowa'];
  6. echo $_post['Podzial_etniczny'];
  7. echo $_post['Religie'];
  8. echo $_post['Analfabetyzm'];
  9. echo $_post['Bezrobocie'];
  10. echo $_post['Eksport_wartosc'];
  11. echo $_post['Eksport_produkty'];
  12. echo $_post['Import_wartosc'];
  13. echo $_post['Import_produkty'];
  14. cho $_post['Udzial_sek_w_pkb'];
  15. echo $_post['Bezpieczenstwo_energetyczne'];
  16. echo $_post['Gospodarka_energetyczna'];
  17. echo $_post['Dlug_narodowy'];
  18.  
  19. if($Panstwo){
  20.                       mysql_connect (&#092;"localhost\", \"root\", \"\") or die(\"nie nawiazano polaczenia\");
  21.                          mysql_select_db (&#092;"Panstwa_swiata\") or die('NIe mozna polaczyc sie z baza ');    
  22.  
  23. $nowy_rekord=&#092;"insert into dane (nr, Panstwo, Ludnosc, Przyrost_naturalny, Struktura_wiekowa, Podzial_etnicz
    n
  24. , Religie, Analfabetyzm, Bezrobocie, Eksport_wartosc, Eksport_produkty, Import_w
  25. rtosc, Import_produkty, Udzial_sek_w_pkb, Bezpieczenstwo_energetyczne, Gospodark
  26. _energetyczna, Dlug_narodowy) VALUES ('','$Panstwo', '$Ludnosc', '$Przyrost_naturalny', '$Struktura_wiekowa', '$Podzial_etniczny', '$Religie', '$Analfabetyzm', '$Bezrobocie', '$Eksport_wartosc', '$Eksport_produkty', '$Import_wartosc', '$Import_produkty', '$Udzial_sek_w_pkb', '$Bezpieczenstwo_energetyczne', '$Gospodarka_energetyczna', '$Dlug_narodowy');\";
  27.             $poprawnosc=mysql_query($nowy_rekord);
  28.                 if($poprawnosc)
  29.                     
  30. echo \"nDodano nowe panstwo\"; //informuje o dodaniu nowego panstwa
  31.                                  
  32.               else
  33. echo \"nBlad podczas zapisu.Sprawdz poprawnosc danych\";
  34. }
  35. else
  36. echo \"brak nazwy panstwa\";
  37.  
  38. ?>

po wpisaniu do formularza jakiekolwiek danej i kliknieciu przycisku wyswietla stronke wpisywanie.php z komunikatem brak nazwy panstwa...oraz pczywiscie wartosc zmiennej panstwo rowniez nie jest wyswietlana. Podobnie jesli zamienilem metode z post na get...
zglupialem calkowicie bo wlasnie zauwazylem ze w pasku przegladarki jest informacja o panstwie...
http://localhost/moj/wpisywanie.php?Panstwo=ewtwe
ARJ
radze przeczytać Wyjście z php, to ci pomoże trochę uprościć kod.
teraz twój kod: w nowy.php w lini 8 masz method='get' ,a w pliku wpisywanie.php odczytujesz informacje z tablicy post. musisz się zdecydować.
hmmm
nie chce mi sie czytac kodu, bo za dlugi ...
tylko jedna rzecz zauwazylem tak szybko go przegladajac - dlaczego nie nadajesz atrybutu type dla pol input?

powinno byc przeciez
Kod
<!-- przyklad1 -->
<input type="text" name="pole1" />

<!-- przyklad2 -->
<input type="password" name="pole2" />


a co do php i formularzy html, to - na podstawie przykladu :]

to jest kod pliku z formularzem
  1. <form action="obsluz.php" method="post">
  2. imie: <input type="text" name="imie1" size="20" maxlength="20" /><br />
  3. nazwisko: <input type="text" name="nazwisko1" size="30" maxlength="30" />
  4. <input type="submit" value="wyslij" />
  5. </form>


a to kod pliku obslugujacego formularz
  1. <?php
  2. $imie2 = $_POST['imie1'];
  3. $nazwisko2 = $_POST['nazwisko1'];
  4.  
  5. //jakis tam kod strony
  6.  
  7. echo &#092;"twoje dany zostaly dodane!<br />n\";
  8. echo &#092;"imie - \" . $imie2 . \".n\";
  9. echo &#092;"nazwisko - \" . $nazwisko2 . \".n\";
  10. ?>


powinno dzialac ...
wierus
Dzieki za odpowiedzi. Duzo mi pomogly szczegolnie jesli chodzi o wychodzenie z php:) NIestety meritum problemu zostalo rozwiazane tylko czesciowo. Dlaczego? Otoz jesli uzywam metody get to wszystko dziala

  1. <tr><td><font size="+3"g><center>Dodanie nowego panstwa do bazy danych</center></font><br><br></td></tr>
  2. <form name="wpisywanie" enctype="text/plain" action="wpisywanie.php" method="get">
  3. <TR><TD><B>Nazwa panstwa:</B></TD><TD><input type="TEXT" name="Panstwo" ></TD</TR>

Po stronie wpisywanie.php
  1. <?php
  2. echo $_get['Panstwo'];
  3. echo $Panstwo; 
  4. ?>

jak rowniez
  1. <?php
  2. $Panstwo = $_get['Panstwo'];
  3. ?>

---------------------
Natomiast jezeli uzyje metody post(reszta ta sama) to nie dziela!! zmienna $panstwo jest pusta!!!
  1. <tr><td><font size="+3"g><center>Dodanie nowego panstwa do bazy danych</center></font><br><br></td></tr>
  2. <form name="wpisywanie" enctype="text/plain" action="wpisywanie.php" method="post">
  3. <TR><TD><B>Nazwa panstwa:</B></TD><TD><input type="TEXT" name="Panstwo" ></TD</TR>

  1. <?php
  2. echo $_post['Panstwo'];
  3. echo $Panstwo; 
  4.  
  5. ?>

jak rowniez
  1. <?php
  2. [php]$Panstwo = $_post['Panstwo'];
  3. echo $Panstwo;
  4. ?>

Oczywiscie moge uzywac get i wszystko bedzie ok, ale moja natura nie pozwala mi przejsc obojetnie kolo tego....
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.