Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Formularz, problem ze sprawdzaniem wpisanych danych
lukash82
post
Post #1





Grupa: Zarejestrowani
Postów: 320
Pomógł: 2
Dołączył: 17.03.2006
Skąd: Siemianowice

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


Witam. Mam klopot ze sprawdzeniem danych wpisanych przez uzytkownika do formularza gdy ten bedzie chcial cos kupic w sklepie internetowym. Chodzi tu o to zeby nie wpisywal jakichs dziwnych rzeczy a np. imie czy nazwisko z duzej litery, bez cyferek itd. Formularz wyglada nastepujaco (plik nazywa sie powiedzmy form1.php:
(IMG:http://localhost/zamowienie.gif)
I teraz gdy uzytkownik wpisze dane klika na buttona na dole i wtedy ma byc akcja typu, ze jesli dane sa zle wpisane to ma wrocic z powrotem do tego formularza i wywalic komunikat gdzie jest blad (cos jak np. przy zakladaniu maila i wyborze nicku) A jesli wszystko bedzie ok to przejdzie dalej (do pliku form2.php) np prezentujac wpisane dane jeszcze raz z opcja wroc gdyby uzytkownik sie jednak pomylil w kodzie pocztowym czy cus w tym stylu. Probowalem to zrobic wykorzystujac if, cos w tym stylu co umiescilem w pliku form2.php:
  1. <?php
  2.  
  3. if {
  4. if ( !ereg("^[A-Z][a-z]+$",$imie))
  5. printf("zle imie");
  6. else {echo "$imie";}
  7. if ( !ereg("^[A-Z][a-z]+$",$nazwisko))
  8. printf("zle nazwisko");
  9. else {echo "$nazwisko";}
  10. }
  11. else{
  12. --wyswietlanie danych jesli dobre--
  13. }
  14.  
  15. ?>

I wlasnie z tym mam problem bo nie wiem jak sie za to zabrac praktycznie bo teoretycznie to chyba jest dobre podejscie... Nie wiem jak przekazac te zle wpisane dane z powrotem do tamtego formularza (form1.php). Jesli ktos wie jak sie za to zabrac to prosze o pomoc. No chyba ze bylby inny sposob sprawdzenia...(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
krzyszbi
post
Post #2





Grupa: Zarejestrowani
Postów: 251
Pomógł: 13
Dołączył: 15.09.2005

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


witam
a więc jak chcesz pokaać ostrzeżenie to je dajesz w tym miejscu w którym ma sie ono pokazać, ja to robie mniej więcej tak
  1. <tr>
  2. <td width="30%" class=r>Imię</td>
  3. <td width="70%" class=l>
  4. <?php
  5. if (!empty($_SESSION['info']))
  6. echo $_SESSION['info'];
  7. ?>
  8. <input type="text" name="imie" maxlength="30" size="30">
  9. </td>
  10. </tr>

i tak mniej wiecej ja to mam zrobione(chociarz u mnie info o wynaganych polach pokazuje się na samej górze)
i tak na koniec dobrze jet jak bedziesz mial zapamiętanie i automatyczne wczytanie wcześniej wpisanych danych mniej więcej tak to zrobione
  1. <?php
  2. if (empty($_POST['nazwa_pola']))
  3. {
  4. $_SESSION['info'] = 'Masz bląd, popraw';
  5. $_SESSION['nazwa_pola'] = $_POST['nazwa_pola'];
  6. header('Location: plik1.php');
  7. }
  8.  
  9. ?>

a później w pliku z formularzem dajesz
  1. <?php
  2. if (!empty($_SESSION['info']))
  3. echo $_SESSION['info'];
  4. if (!empty($_SESSION['nazwa_pola']))
  5. echo'<input type="text" name="imie" maxlength="30" size="30" value="'.$_SESSION['nazwa_pola'].'" />';
  6. ?>

to tyle z mojej strony
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 02:56