Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sprawdzanie Poprawnosci Danych
Forum PHP.pl > Forum > Przedszkole
invx
chcialem zrobic sprawdzanie poprawnosci wpisanych danych, przy rejestracji, zrobilem cos takiego.
  1. <?php
  2. function add_user()
  3. {
  4.  
  5. if ( isset($_GET[m]) )
  6. {
  7.  if( empty($_POST[login]) )
  8. {
  9. $login=1;
  10. }
  11. elseif( empty($_POST[pass]) )
  12. {
  13. $pass=1;
  14. }
  15. elseif( empty($_POST[pass2]) )
  16. {
  17. $pass2=1;
  18. }
  19. elseif( empty($_POST[pytanie]) )
  20. {
  21. $pytanie=1;
  22. }
  23. elseif( empty($_POST[odpowiedz]) )
  24. {
  25. $odpowiedz=1;
  26. }
  27. }
  28.  
  29. echo&#092;"
  30. <center>
  31. <p align='center' class='title'>REJESTRACJA</p>
  32. <form method='POST' action='loguj.php?mode=add_user&m=spr'>
  33. <table>
  34.  
  35. &#092;";
  36. if ( isset($_GET[m]) )
  37. {
  38. if ( $login == 1 )
  39. {
  40. $clas=&#092;"formularz_error\";
  41. }
  42. else
  43. {
  44. $clas=&#092;"formularz\";
  45. }
  46. }
  47. else
  48. {
  49. $clas=&#092;"formularz\";
  50. }
  51. echo&#092;"
  52. <tr clas=$class>
  53. <td align='right'><b>Login:</b>
  54. </td>
  55. <td class='formularz'><input type='text' name='login' size='20'><br>
  56. </td>
  57. </tr>
  58. &#092;";
  59.  
  60. //i tak dalej z innymi poalmi
  61. ?>


skrypt wywolujacy fuckcje add_user()
  1. <?php?
  2. if($_GET[mode] == add_user)
  3. {
  4. echo tabela_start();
  5. echo add_user();
  6. echo tabela_end();
  7. }
  8. >
  9.  
  10. ?>


problem w tym, ze caly czas obojetnie czy pole Login puste czy nie laduje mi klse formularz_error, strasnie namieszalem w tym kodzie smile.gif
Aiker
Musisz wszystkie zmienne z formularza przekazac jako argumenty do funkcji poniewaz ich w srodku nie widac np.
  1. <?php
  2.  
  3. function addUser(login, password itp...)
  4.  
  5. ?>

i wtedy funkcje wywolujesz np tak.
  1. <?php
  2.  
  3. if($_GET[mode] == add_user)
  4. {
  5. echo tabela_start();
  6. echo add_user($_POST['login'], $_POST['password'] ,itp.....);
  7. echo tabela_end();
  8. }
  9.  
  10. ?>
Jojo
Cytat(Aiker @ 2004-06-15 21:42:54)
Musisz wszystkie zmienne z formularza przekazac jako argumenty do funkcji

Bzdura!
Cytat(Manual)
This is a 'superglobal', or automatic global, variable. This simply means that it is available in all scopes throughout a script. You don't need to do a global $_SERVER; to access it within functions or methods, as you do with $HTTP_SERVER_VARS.

Oznacza to, że jeśli używasz tablic $_POST, $_GET itd. nie musisz ich "ręcznie" przenosić do funkcji. Możesz z nich korzystać w _każdym_ miejscu skryptu.

invx: Linie 41, 45, 50 i 53 Twojego skryptu. Tam ma być "clas" czy "class"?
invx
clas ma byc bo to tylko nazwa zmiennej, a nie chcialem zeby nazywala sie tak samo jak sie definujue klasy
Jojo
Skoro tak to w linii 53 jest błąd jest tam:
  1. <tr clas=$class>

a powinno być
  1. <tr class=$clas>
invx
biggrin.gif dziala, przy zmianie nazwy zmiennej nie z tej strony uciolem s smile.gif

P.S.
gdzie tu jest pomugl ?
Chewolf
Cytat(invx @ 2004-06-16 19:28:57)
P.S.
gdzie tu jest pomugl ?

laugh.gif przy: raportuj,cytat itd. winksmiley.jpg
invx
m5910 albo ja nie dowidze, albo nie ma, raczej to drugie smile.gif
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.