Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP] Autouzupełnianie formularza
webspy
post
Post #1





Grupa: Zarejestrowani
Postów: 186
Pomógł: 9
Dołączył: 3.03.2008

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


Witam,
Mam taki mały problem, a mianowicie chodzi o autouzupełnianie formularza.
Przykład:
Po wpisaniu w pierwszym input imienia i nazwiska ma uzupełniać pozostałe input i textarea o adres, email, telefon itp.
Wszystko jest zapisane w bazie mysql.
Jest jakiś dobry sposób na ten problem?
Czytałem o autocomplete ale nie wiem jak połączyć to z bazą mysql i rozwiązanie tego zajmnie mi trochę czasu (powoli to rozgryzę) jeśli nie ma innego rozwiązania to będę kombinował z tym autocomplete.

Najprostrzym rozwiązaniem byłoby zrobienie jednego formularza z polem imie i nazwisko i przejscie do drugiej strony z weryfikacja danych, jesli taki koles istnieje w bazie to uzupelnia a jesli nie to zostaje puste, to umiem zrobić. Tylko chciałbym bez odswieżania strony.

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
tab
post
Post #2





Grupa: Zarejestrowani
Postów: 75
Pomógł: 20
Dołączył: 8.10.2012

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


Ja bym tutaj wykorzystał JavaScript + Ajax. Przykładowy kod:
  1. <input type="text" id="name">
  2. <input type="text" id="email">
  3. <input type="text" id="phone">

[JAVASCRIPT] pobierz, plaintext
  1. <script src="http://code.jquery.com/jquery-latest.js"></script>
  2. <script type="text/javascript">
  3. $(document).ready(function() // po zaladowaniu całego DOM
  4. {
  5. $('#name').change(function() // po zmiane zawartosci inputa name
  6. {
  7. var inputName = $('#name').val();
  8. $.ajax({
  9. type : "POST", // dane przesylamy metoda POST
  10. url : "db.php",
  11. dataType : "json", // w formacie JSON
  12. data : { // dane do wyslania
  13. name : inputName;
  14. },
  15. success : function(json) // zdarzenai odpalane przy powodzeniu
  16. {
  17. $('#email').val(json['email']);
  18. $('#phone').val(json['phone']);
  19. },
  20. error : function() // przy bledzie
  21. {
  22. alert('ERROR');
  23. }
  24. });
  25. });
  26. });
  27. </script>
[JAVASCRIPT] pobierz, plaintext

  1. <?php
  2. if (isset($_POST['name']))
  3. {
  4. $name = $_POST['name'];
  5. $pdo = new PDO(...); // tutaj w zaleznosci od twoich parametrow
  6. $stmt = $pdo->query("SELECT phone, email FROM tabela WHERE name='$name'");
  7. $res = $stmt->fetch(PDO::FETCH_ASSOC); // ustawiamy flage informujaca o tym, ze chcemy utworzy tablice asocacyjna
  8. $stmt->closeCursor();
  9. echo json_encode($res); // konwertujemy dane na format json aby pozniej moc sie do nich wygodnie odwolywac w js
  10. }

JSON to po prostu sposob zapisu informacji, alternatywnie moglbys uzyc XML albo nawet zwyczajnie wypisac tekst uzywajac np przecinka do jego odgradzania, a w skrypcie js uzyc split do rozdzielenia. Osobiscie preferuje jsona. PDO to obiektowa biblioteka do komunikacji ze SQL, jezeli jej nie znasz mozesz uzyc zamiast new, mysqlconnect; $pdo->query, mysql_query; $stmt->fetch, mysql_fetch_row itd... Mam nadzieje w kazdym razie ze o to ci chodzilo

Ten post edytował tab 1.12.2012, 02:03:29
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: 15.10.2025 - 19:49